@sveltejs/kit@3.0.0
Major Changes
-
breaking: move remote function types to $app/server(#16740)
-
breaking: remove experimental.handleRenderingErrorsflag (#16265)
-
breaking: make getRequestandsetResponsesynchronous (#16280)
-
breaking: TypeScript 6 is now the minimum required version (#15930)
-
breaking: refresh all load functions/queries when clicking a link to the current URL (#16572)
-
breaking: move remote function types to $app/server(#16764)
-
breaking: upgrade to cookiev2. Cookie names must now contain only ASCII characters (#13386)
-
breaking: require Node 22 or newer (#12548)
-
major: error when a client-requested single-flight mutation isn't respected by the server, allow the server to explicitly ignore refreshes (#16892)
-
breaking: remove the preloadStrategyoption.modulepreloadwill always be used (#15256)
-
breaking: default the cookie pathoption to'/'(#15398)
-
breaking: remove @sveltejs/kit/node/polyfills(#15430)
-
breaking: add config.kit.output.linkHeaderPreloadto preload using theLinkheader (#15939)
-
breaking: require @sveltejs/vite-plugin-sveltev7 (#15371)
-
breaking: make page.urlimmutable on a type level (#16256)
-
breaking: remove base,assets, andresolveRoutefrom$app/paths(#15507)
-
breaking: remove createEntriesfrom theBuilderobject passed to adapter functions (#15509)
-
breaking: return no content for 204 responses (#16200)
-
breaking: rename Pathnametype toPathandAssettoAssetPath(#16430)
breaking: remove leading/fromPathandAssetPath
-
breaking: handle'sresolveis now typed to always return aPromise(#16352)
-
breaking: remove Serverconstructor andSSRManifestfrom public types (#16876)
-
breaking: require Svelte config options to be passed through the Vite plugin (#16007)
-
breaking: form action responses now use the HTTP status code returned from fail(#16200)
-
breaking: write tsconfig to node_modules/$app/tsconfig(#16458)
-
breaking: move defineParamsand associated types to@sveltejs/kit/params(#16716)
-
breaking: remove the deprecated CSRF checkOriginoption in favor oftrustedOrigins(#15437)
-
breaking: the deltaproperty now only exists forpopstatenavigation events (#15522)
-
breaking: change form.errortype fromanytoApp.Error | undefined(#16245)
-
breaking: remove deprecated pragmaheader in version polling for improved CORS support (#15428)
-
breaking: gotonow rejects when called with a URL that does not resolve to a route within the app, matching the existing behaviour for external URLs (#16164)
-
breaking: run all errors through the handleErrorhook (#16664)
-
breaking: require Svelte 5.56.4 or newer (#15371)
-
breaking: error on event.url,event.paramsandevent.routeaccess inside queries (#16452)
-
breaking: enhanced cross-page form actions now navigate to the action page on success and failure, matching native form behavior (#16684)
-
breaking: delete $service-workermodule (#16450)
-
breaking: move defineEnvVarsto@sveltejs/kit/env(#16375)
-
breaking: nested server-only directories (#15685)
-
feat: allow adapters to provide additional Vite plugins (#16206)
-
breaking: replace the $libalias with#liband removefiles.libconfig. (#16360)
-
breaking: remove #libdefinition frompaths; requires explicit module extensions as a result (#16736)
-
chore: change error,isHttpError,redirect, andisRedirectto refer to public type instead of internal class (#13036)
-
breaking: move hooks-related types to @sveltejs/kit/hooks(#16737)
-
breaking: add 'error' result type to preloadData(#12579)
-
breaking: detect new deployments on data, remote, and form action responses, tab focus, and visibility change, and default version.pollIntervalto 1 hour (#16496)
-
breaking: disallow cross-origin form submissions without a Content-Typeheader (#16347)
-
breaking: Server-only directories ( /server/in the path) are now treated as server-only everywhere inside the project (exceptsrc/routesand the assets directory) (#16360)
-
breaking: configexported from a universal route file takes precedence over a server one (#16400)
-
breaking: 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 (#15371)
-
breaking: remove data-sveltekit-*option'off'in favour offalse(#15907)
-
breaking: move tracing out of the experimental namespace and remove the instrumentation flag (#16260)
-
breaking: add kit.paths.originconfig option, removekit.prerender.originand theadapter-nodeORIGINenvironment variable (#16161)
-
breaking: move Page,ReadonlyURLandReadonlyURLSearchParamsfrom@sveltejs/kitto$app/state(#16694)
-
breaking: remove $app/stores(#15499)
-
breaking: add refreshAlland deprecateinvalidateAll(#16289)
-
breaking: reject query parameters beginning with x-sveltekit-(#17125)
-
breaking: disallow *.remote.ts/jsfiles unlessexperimental.remoteFunctionsis enabled (#16247)
-
breaking: replace the noScrollandkeepFocusoptions ofgotowith a singleresetoption, and thedata-sveltekit-noscrollanddata-sveltekit-keepfocusattributes withdata-sveltekit-reset(#16558)
-
breaking: don't abort navigation when calling invalidate(All)during navigation (#16188)
-
breaking: consistent special filename patterns (#16382)
-
breaking: allow handleErrorto influence status code (#16162)
-
breaking: delegate CORS handling to Vite for static directory requests during development (#16357)
-
breaking: require vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0 (#16134)
-
breaking: only include routes with a +pageor+serverinRouteId(#16580)
-
breaking: require Node 22.17 (#16597)
-
breaking: deprecate error(status, {...})in favour oferror(status, message, {...})(#16540)
-
breaking: replace the builder.generateManifestwithbuilder.generateServerInstanceandbuilder.manifest(#16875)
-
breaking: forbid external redirects by default (#16198)
-
breaking: separate adapter Vite plugins into preandpost(#16711)
-
breaking: remove param files in folder in favor of params.js/tsfile (#16189)
-
breaking: move env-related types to @sveltejs/kit/env(#16739)
-
breaking: preloadCodenow takes a route ID (e.g./blog/[slug]) instead of a pathname. Route IDs are not prefixed withpaths.base(#16576)
-
breaking: move BeforeNavigate,OnNavigate,AfterNavigate,Navigation,NavigationTarget,NavigationType,GotoOptionsand theNavigation*variant types from@sveltejs/kitto$app/navigation(#16694)
-
breaking: move ActionResultandSubmitFunctionfrom@sveltejs/kitto$app/forms(#16694)
-
breaking: remove handleValidationErrorand pass remote function validation errors tohandleErrorwithkind: 'validation'(#16672)
-
breaking: remove deprecated .run()method from live queries (#16573)
Minor Changes
-
feat: allow hyphens in param and matcher names (#16284)
-
feat: add $app/manifestmodule withimmutable,assets,prerendered, androutesexports (#16372)
-
feat: ignore files with + prefix if they contain test/spec/stories (#16715)
-
feat: add ErrorPropsto generated types (#16272)
-
feat: support sourcemaps in production (#16412)
-
feat: return the list of compressed files from builder.compress(#16566)
-
feat: better response logging (#16744)
-
feat: warn when tsconfig doesn't exclude service worker (#16645)
-
feat: validate that all remote form fields were created with form.fields.foo.as(...) (#16331)
-
feat: support function validators for environment variables (#16402)
-
feat: use type: 'module'for service worker registrations (#16169)
-
feat: allow adapters to receive the Svelte config as a function argument when adding Vite plugins (#16986)
-
feat: add shallow routing to gotoand deprecatepushStateandreplaceState(#16449)
-
feat: abort request.signalwhen the response closes prematurely, via a newresponseoption forgetRequest(#16793)
-
feat: make $app/pathsimportable in service workers (#16441)
-
feat: pass the project-relative source filenameto thepreloadfilter for fonts (#16443)
-
feat: preserve page state set through goto(..., { state, persistState: true })across reloads (#16449)
-
feat: 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/env(#16334)
-
feat: add pageandendpointbooleans to$app/manifest'sroutes, and export aManifestRoutetype (#16594)
-
feat: $app/service-workermodule (#16458)
-
feat: resolve paths using the Vite config rootoption instead ofprocess.cwd()to better support monorepo configurations such as Vitest workspaces (#15469)
-
feat: better error logging (#16374)
-
feat: add PageRouteIdandEndpointRouteIdto$app/types(#16594)
-
feat: better tsconfig validation (#16458)
-
feat: add dirty()property to form fields (#16208)
-
feat: support the QUERYHTTP method in+server.js(#16782)
-
feat: allow adapters to override getRequestandsetResponseduringvite devandvite preview(#16753)
-
chore: deprecate Responsehelpers in favor of platform-provided alternatives (#15448)
-
feat: add cookies.parsemethod (#16203)
-
chore: deprecate export const snapshotin favour of thesnapshothelper (#16687)
-
feat: add snapshothelper to$app/navigation(#16685)
-
feat: support custom values in page.stateviatransporthook (#16662)
-
fix: default cookies to securetofalseduring development (#16462)
-
feat: warn when naively proxying requests that result in responses with a content-encodingheader (#16633)
-
feat: accept the checked state as a third argument to .as('radio', ...)and.as('checkbox', ...)so that these inputs reset to it after a submission (#16926)
-
feat: add an applyReroutehelper for adapters that support split serverless function deployments (#16665)
Patch Changes
-
fix: prevent scheme-like path segments from causing off-site trailing-slash redirects (#17294)
-
chore: share the action error result between form actions and remote forms (#16835)
-
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 sequences (#16577)
-
fix: coerce values typed into remote form fields, and only apply the default given to .as()until the field is edited (#16939)
-
fix: blur focused SVG elements before the DOM update on navigation (#16983)
-
fix: support bigint params in server-side route resolution (#17130)
-
chore: build streamed responses from async generators (#16847)
-
fix: generate types when dev server starts (#17034)
-
fix: allow undefinedvalues to be passed to form field.as(...)where applicable (#15681)
-
fix: respect paths.relativeduring development for client files (#17053)
-
fix: validate prerender concurrency (#17145)
-
chore: deprecate builder.rimrafandbuilder.mkdirpin favour ofnode:fsmethods (#16610)
-
fix: manipulate stack trace for errors that happen while generating prerender inputs (#17113)
-
fix: don't treat callable standard schemas as function param matchers (#16403)
-
fix: prevent non-redirect enhanced form results from navigating to another origin (#17293)
-
fix: clarify circular imports from src/env(#17014)
-
fix: keep memory flat when precompressing many files (#16993)
-
fix: render remote form actions while prerendering (#17139)
-
fix: ignore Vitest browser loader HTML transforms (#17092)
-
fix: prevent failed link preloads from causing unhandled promise rejections in production (#17181)
-
fix: resolve generated rootDirs from the project root (#17242)
-
fix: generate route resolution modules as siblings of .htmlpages (#16674)
-
perf: parse large streamed frames in linear time (#16489)
-
fix: keep at most one pending body read at a time when deserializing binary forms (#16783)
-
fix: escape cache-control headers in prerendered HTML (#17293)
-
fix: decode all numeric character references, including above ffff, when crawling prerendered pages (#16611)
-
fix: enforce request body size limits when Content-Type is absent (#17127)
-
fix: include queries refreshed from within another query in the serialized response (#16461)
-
fix: reject malformed streamed data encoding (#16423)
-
perf: cache the default cookie header parse and avoid allocations in cookies.get(#16341)
-
fix: exclude deleted cookies from cookies.getAll()so it stays consistent withcookies.get()(#16297)
-
fix: hide stack traces for internal errors like 404s (#16411)
-
chore: deduplicate repeated CSP directive handling (#16498)
-
fix: render the nearest error page when a form submission receives a non-ActionResult error response (#16308)
-
chore: bump mrmimeto 2.0.1 (#16745)
-
fix: correctly implement Vite plugin hook filters (#16760)
-
fix: ignore nested outDir files outside generated (#17150)
-
fix: defer query.refresh()in server commands until after the command body completes (#16225)
-
fix: drain unconsumed request bodies so keep-alive connections don't hang (#16170)
-
fix: keep history.scrollRestorationset tomanualwhen leaving the page, so a document restored from the back/forward cache does not fall back to browser scroll restoration (#17244)
-
fix: resolve service worker and tsconfig.jsonbased on Viterootsetting (#16229)
-
fix: rebuild the dev manifest when route files disappear during an incremental update (#16643)
-
breaking: populate env vars before instrumentation.server.jsis evaluated and update the adapter instrumentation API (#16303)
-
fix: only print prerender progress newline when necessary (#16766)
-
perf: match only unpaired surrogates when escaping HTML (#16407)
-
fix: treat data:protocol URLs as external for redirect (#16392)
-
chore: deduplicate request hashing for serialized fetch responses (#16499)
-
fix: don't treat Object.prototypemembers as param matchers during validation (#16612)
-
fix: generate a neverPathtype when there are no routes (#17228)
-
fix: follow HTTP redirects from authentication proxies when enhancing form submissions (#17106)
-
fix: don't report empty environment variables as missing (#16401)
-
chore: generate the env modules in a single pass (#16833)
-
fix: externalize @opentelemetry/apito prevent bundler chunk colocation betweeninstrumentation.server.jsand application code (#16302)
-
fix: support form fields named after Object prototype properties (#17136)
-
fix: exclude routes without a page or endpoint from routesin$app/manifest, and remove directories with no route files fromLayoutParams(#16588)
-
fix: record a history traversal before resolving its route (#16959)
-
fix: avoid Vite dev server reload on initial page request (#16553)
-
fix: don't set a nullaccept-languageheader on internalfetchsub-requests when the incoming request has none (#16527)
-
fix: reuse SSR-cached fetch responses during hydration when a cross-origin URL is not in canonical form (#16339)
-
fix: correctly detect prerendered paths in server fetchwhenpaths.baseis set (#16525)
-
chore: say what a valid remote form field name looks like when rejecting one (#16938)
-
chore: warn when remote form fields are enumerated in dev (#16940)
-
fix: populate $app/env/*dynamic variables in contexts that don't run the dev server, such asvite-node(#16223)
-
fix: resolve client manifest imports against the Vite root (#16803)
-
fix: properly handle Date objects in form.fields.set (#16168)
-
fix: return 404 for form actions and remote functions whose name is an Object.prototypemember (#16072)
-
fix: no longer throw "An impossible situation occurred" when a server-only module is imported by both server and client code (#16257)
-
fix: respect Vite default log level (#16767)
-
fix: set the focus starting point without a fragment navigation, which leaked a hashchangeto app listeners (#16992)
-
fix: keep a form.forinstance registered when the derived that holds it disconnects and reconnects (#17230)
-
fix: make cookie options optional (#17201)
-
fix: don't duplicate remote modules in the generated manifest (#16532)
-
fix: evict hashed fetch cache entries after mutations (#17146)
-
chore: reuse base64 and text decoding helpers (#16608)
-
fix: explain the removal of $liband$service-workerwhen their imports fail to resolve (#16635)
-
fix: tweak response logging for remote requests (#16865)
-
fix: correctly massage stack traces with async frames (#16633)
-
fix: mark RequestEventproperties asreadonly(#16661)
-
fix: render the nearest +error.svelteat the depth it occupies when an error is thrown during rendering (#16526)
-
fix: support coordinate objects from image inputs in remote forms (#16944)
-
fix: revert route metadata caching to regenerate missing root-route types during sync (#17281)
-
chore: bump @sveltejs/acorn-typescriptto 1.0.12 (#16745)
-
fix: update matchparameter type (#16636)
-
fix: generate sourcemaps for remote modules (#16440)
-
fix: keep hash-router links on the current document when resolving paths (#17107)
-
fix: avoid empty getElementById() call on hash routing navigation (#16448)
-
fix: resolve every module entry point using kit.moduleExtensions(#17043)
-
fix: serve .icofiles withimage/x-iconContent-Type (#16234)
-
chore: bump magic-stringto 1.1.0 (#16745)
-
fix: exclude inlined files from the page's $app/manifestimmutable list (#16531)
-
fix: discard invalidation results when a navigation completes while they load (#16852)
-
fix: avoid client-side code being bundled by Cloudflare Wrangler (#16364)
-
fix: wait for the redirect navigation before remote form submissions resolve (#16765)
-
fix: record the mime types of prerendered paths in the server manifest (#16564)
-
fix: only require the svelte-trusted-htmltrusted-types policy when client-side code is shipped, allowing builds where all pages havecsr: false(#16928)
-
chore: clarify which hooks run during server route resolution (#16397)
-
fix: yield to allow prerender updates to be visible (#16748)
-
fix: make paths.origintype looser (#16215)
-
chore: bump devalueto 5.9.0 (#16745)
-
feat: send periodic keep-aliveSSE comments fromquery.liveto prevent idle-timeout errors (#16063)
-
fix: send an explicit SSE Accept header for query.liverequests to avoid buffering by proxies (#17104)
-
fix: don't touch the query.livestream controller after teardown, and make response cancellation observable via the generator'srequest.signal(#16790)
-
fix: print builder.log.warnmessages to stderr, as documented (#17253)
-
fix: warn if hook files are spelled as "hook" instead of "hooks" (#16483)
-
fix: only suggest a +prefix for route filenames that are valid with the file's extension (#16837)
-
chore: only generate each route's resolution module once when prerendering (#16576)
-
fix: don't throw from remote form validate()if the form unmounts while it is waiting for a tick (#16720)
-
chore: share navigation completion between navigate and shallow routing (#16838)
-
fix: route dev-server response logging through Vite's logger so it respects logLevelandcustomLogger(#16858)
-
fix: skip clean fields when programmatically validating forms (#16208)
-
perf: skip import graph collection outside client environments (#16383)
-
breaking: experimental remote form validate({ includeUntouched })option is nowall(#16208)
-
fix: rerun load functions when the number of values of a tracked search parameter changes (#16495)
-
chore: read build-time config from defines on the server instead of carrying it in options(#16873)
-
fix: avoid client build warning about externalising node:async_hooks(#16244)
-
chore: stop externalizing cookiedependency during build (#16936)
-
fix: reinstate $app/environmentas an alias for$app/env, in case dependencies import it (#15964)
-
fix: preserve paths.basewhenvite previewredirects a prerendered page to the correct trailing slash (#16836)
-
fix: error when reading non-serialized set-cookieheaders viagetSetCookieinload(#16614)
-
fix: walk and copy directories without a stat per file (#16995)
-
perf: avoid quadratic remote form issue merging (#16493)
-
fix: widen remote form fields for union schemas and string enums (#16937)
-
chore: deprecate the aliasoption (#16470)
-
fix: don't attempt to serialize fetch responses when the request body is not a string or TypedArray (#16501)
-
fix: respond to HEADrequests without a body (#17036)
-
chore: replace deprecated Vite dev server APIs (#16961)
-
chore: iterate the query cache maps through a single generator (#16846)
-
fix: handle rejected streamed server data after delayed loads (#16268)
-
fix: don't crash on interactions inside a form whose controls shadow nodeName(#16769)
-
fix: don't replay a preloaded redirect when a later hop of the navigation returns to the route (#16955)
-
fix: prevent path traversal when previewing prerendered pages and data on Windows (#17293)
-
fix: settle a query's pending request in place when its value arrives through set()(#16958)
-
fix: render pages over sibling endpoints without GET or HEAD handlers (#16125)
-
fix: exit build workers after completing their tasks while allowing synchronous exit handlers to run (#17135)
-
fix: prevent infinite loops when server-side queries refresh each other in a cycle during the single-flight drain (#16461)
-
fix: populate versionin service workers (#16434)
-
feat: add field.touched() helper to remote form fields (#14692)
-
fix: respect paths.relativefor server-side route resolution imports (#17056)
-
fix: read the error status of App.Errorin theprerenderandquery.liveremote functions (#16529)
-
fix: resolve remote modules as external during dev prebundling so packages can re-export remote functions (#16426)
-
chore: standardize remote-function and shared form diagnostics (#17277)
-
fix: avoid Promise.withResolversin client remote functions for older browser support (#16777)
-
fix: propagate errors from prerendered remote responses instead of re-running the function (#16535)
-
chore: remove unused helpers (#16834)
-
fix: allow reserved words (e.g. delete,class) as remote function export names (#16264)
-
fix: reset failed <svelte:boundary>on client navigation so a stale+error.svelteis torn down (#16296)
-
fix: clear navigatingwhen a shallow popstate aborts an in-flight navigation (#17118)
-
fix: expand [x+nn]and[u+nnnn]escape sequences when resolving a route id to a pathname (#16570)
-
fix: respect user-set server.corsandpreview.corsconfig instead of overriding them (#16924)
-
fix: respect the status returned from handleErroron the fallback error page served to error-page sub-requests (#16528)
-
fix: restore scroll position after back-forward cache returns (#17255)
-
fix: warn if there are plugins using transformIndexHtml(#16394)
-
fix: refetch route-tracking server data when navigating away from an error page (#16381)
-
fix: allow routes to contain [and]via the[x+5b]and[x+5d]escapes (#16569)
-
chore: use Response.jsoninstead of the deprecatedjsonhelper in runtime responses (#16804)
-
fix: recommend safe include and exclude patterns in tsconfig warning (#17102)
-
chore: remove dependency on kleur (#12548)
-
fix: prevent server-side self-fetch fallbacks from following redirects (#17293)
-
fix: serialize query(...).set(...)/query(...).refresh()values into the rendered HTML when called from within a query during SSR (#16461)
-
chore: configure the server runtime in one place, deprecate Serverin favour of theserverobject written bybuilder.generateServerInstance(#17000)
-
chore: derive content-lengthfrom fixed response bodies insetResponse(#16794)
-
fix: correctly read zero-length files at the end of a binary form payload (#16783)
-
fix: reject fallback handlers on prerendered endpoints (#17140)
-
fix: don't destroy partial-line app output with the prerender progress line (#16750)
-
chore: remove virtual modules (#16813)
-
fix: surface prerender errors during development (#16507)
-
chore: bump cookieto 2.0.1 (#16745)
-
fix: detect $app/serverand$app/env/privateclient imports when SvelteKit is installed inside the project root (#16648)
-
chore: read optionsfrom a single module instead of passing it through the server runtime (#16871)
-
fix: wait for the redirect navigation before prerendered remote functions resolve (#16765)
-
fix: sort directory entries when building the route manifest so node indices are deterministic across runtimes (e.g. Bun and Node) (#16074)
-
fix: skip unnecessary version.jsonchecks ifupdated.currentis alreadytrue(#16518)
-
fix: allow generation of $app/tsconfig without TypeScript installed (#16534)
-
chore: remove dependency on set-cookie-parser(#15384)
-
chore: share the nearest error page walk between client and server (#16774)
-
fix: fall back to the page's form actions when a sibling endpoint has no POST handler (#16349)
-
fix: record client output extensions in builder.mimeTypes(#16908)
-
perf: use a Setto check element ids when validating fragment links during prerendering (#16494)
-
fix: preserve shared client chunk hashes when the app version changes (#16324)
-
fix: include hoisted packages in Vite's server.fs.allowlist (#15998)
-
chore: standardize app template diagnostics (#17250)
-
chore: standardize Vite plugin, build, prerender and adapter diagnostics (#17253)
-
chore: standardize client navigation, preload, snapshot and enhancement diagnostics (#17276)
-
chore: standardize configuration, environment and tsconfig diagnostics (#17251)
-
chore: standardize public API, $app/*and deprecated module diagnostics (#17265)
-
chore: standardize route discovery, parameter and route export diagnostics (#17252)
-
chore: standardize server request, hook and page diagnostics (#17275)
-
fix: preserve metadata on streamed page responses (#16935)
-
fix: only include _app/immutablefiles in$app/manifest'simmutablein the service worker (#16531)
-
chore: remove the dead SSRState.fallbackfield and name the server state fork semantics (#16598)
-
fix: atomically replace route metadata during sync (#17096)
-
fix: import resolved peer dependencies as file URLs so project-relative resolution works on Windows (#16618)
-
fix: preserve sourcemap source paths when adapters copy build output (#17082)
-
fix: log errors caught by the Vite dev server handler (#16550)
-
chore: bump acornto 8.18.0 (#16745)
-
fix: resolve rootper instance of the SvelteKit Vite plugin (#16513)
-
fix: report tsconfig parse errors on Windows (#17251)
-
fix: return root layout server data for error-page data requests to non-existent routes (#16376)
-
fix: prevent prerender crawler from hanging on unterminated unquoted attributes (#17141)
-
fix: prevent await_reactivity_losswarning andstate_unsafe_mutationerror when the new version detector runs after anawait(#16915)
-
fix: redact nested and typed underscore-prefixed remote form fields after invalid submissions (#17128)
-
fix: ignore path casing differences when warning about overridden Vite config on Windows (#16545)
-
fix: return a lightweight 404 instead of rendering the error page for subresource requests (#16463)
-
fix: preserve stripped path prefixes by making trailing-slash redirects relative (#16431)
-
fix: preserve the current URL search parameters when submitting a remote form without JavaScript (#16373)
-
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 (#16533)
-
fix: correctly serialize Node.js buffers returned from remote functions during SSR (#17158)
-
fix: preserve errors with read-only stack properties (#17180)
-
chore: deduplicate type-stripping logic in tweak_types(#16454)
-
fix: avoid infinite loop when building with --watchflag (#16632)
-
chore: unify the walkandlist_filesfilesystem helpers (#16784)
-
fix: error during development if the adapter does not support instrumentation and it exists (#16548)
-
fix: use mouseover+mousemove for preloading to reduce events (#16325)
-
fix: reject invalid binary form file metadata (#17149)
-
fix: error on server-only imports reachable from hooks or service worker files outside the project root (#16912)
-
fix: write generated tsconfig to node_modules/$app/tsconfig.jsonso that tools with simplified tsconfig resolution can find it (#16589)
-
chore: emit env modules to disk (#16807)
-
fix: more informative error message when running a command inside a query or prerender function (#17293)
-
fix: adjust error overload for optional App.Errorparameters (#16725)
-
fix: prerender and crawl pages whose content-typeheader carries acharsetparameter (#16567)
-
fix: stream promised readresults lazily instead of eagerly buffering them (#16622)
-
fix: copy worker files emitted by the server build to the client output directory (#16929)
-
chore: parse page options and remote modules with Vite's parseSyncinstead ofacorn(#16947)
-
fix: correctly decode [u+nnnn]escape sequences aboveffff(#16611)
-
fix: Reject all pending query promises when a query fails before resolving with a value for the first time (#16890)