Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2120 commits
Select commit Hold shift + click to select a range
6a9cdaa
fix: relax form typings for union types (#15687)
dummdidumm Apr 9, 2026
24d7e76
chore: fix reuse wording in client comment (#15679)
Rohan5commit Apr 9, 2026
3202ed6
Merge commit from fork
elliott-with-the-longest-name-on-github Apr 9, 2026
10d7b44
Merge commit from fork
elliott-with-the-longest-name-on-github Apr 9, 2026
75147d4
Version Packages (#15684)
github-actions[bot] Apr 9, 2026
96eb914
docs: fix article typo in migration guide (#15693)
Rohan5commit Apr 10, 2026
8e4949e
chore(deps): update actions/github-script action to v9 (#15691)
renovate[bot] Apr 10, 2026
3712121
chore: document `query.run` (#15661)
elliott-with-the-longest-name-on-github Apr 10, 2026
098acac
docs: update instructions for opting in to remote functions (#15706)
Rich-Harris Apr 11, 2026
348ed22
docs: fix wording in command comment (#15704)
Rohan5commit Apr 13, 2026
2a5ad53
fix: prevent `deep_set` crash on nullish nested values (#15600)
RazinShafayet2007 Apr 15, 2026
50cc685
fix: link stylesheets and fonts in the head even when SSR is disabled…
teemingc Apr 16, 2026
42ca931
chore: upgrade to Vite 6.4.2 (#15721)
benmccann Apr 17, 2026
b77f00d
fix: allow `query().current` and other data properties to work in non…
ottomated Apr 17, 2026
394470c
fix: restore correct `RemoteFormFields` typing for nullable array fie…
elliott-with-the-longest-name-on-github Apr 18, 2026
f4806ba
chore: convert to newer pnpm syntax (#15727)
benmccann Apr 19, 2026
b34cc27
fix: reset form result on redirect (#15724)
ottomated Apr 20, 2026
f06726c
Change enhance function return type to void | Promise<void> (#15710)
Stadly Apr 20, 2026
ee8047b
fix: throw on external links in `resolve` (#15733)
elliott-with-the-longest-name-on-github Apr 21, 2026
4c1283b
chore: rename `allow-builds` to `allowBuilds` in pnpm config (#15735)
teemingc Apr 21, 2026
6b41862
Testing fix for CVE-2026-40073 (#15701)
yahmed-66 Apr 21, 2026
8cc203a
fix: don't warn about removed SSI comments in transformPageChunk (#15…
aubergene Apr 22, 2026
463fab7
chore(deps): update pnpm to v10.33.2 (#15743)
renovate[bot] Apr 23, 2026
f499a45
breaking: return bound `query` instance from `requested` (#15739)
elliott-with-the-longest-name-on-github Apr 23, 2026
a21582c
Version Packages (#15716)
github-actions[bot] Apr 23, 2026
c1d3633
chore: fix IDE typescript errors (#15756)
teemingc Apr 26, 2026
6c90fd9
docs: fix breakout (#15762)
Rich-Harris Apr 28, 2026
055ac24
feat: experimental `query.live` remote function (#15705)
elliott-with-the-longest-name-on-github Apr 28, 2026
a074dc1
fix: `.as('checkbox', value)` was completely broken (#15752)
ottomated Apr 28, 2026
5b28e23
feat: support `query.batch` in `requested` (#15751)
elliott-with-the-longest-name-on-github Apr 28, 2026
1c8e573
fix: remote forms with default values defined by `field.as('text', de…
ottomated Apr 29, 2026
af248a7
fix: unwrap Promise in RemoteCommand output type (#15771)
MartkCz Apr 29, 2026
e48d39a
docs: try removing workaround for missing `@sveltejs/kit/vite` (#15759)
teemingc Apr 30, 2026
a416bb0
docs: improve description for read config parameter (#15673)
benmccann May 1, 2026
b4e4b7a
Fix docs (#15781)
Rich-Harris May 1, 2026
a46dc93
docs: call out danger of caching live query responses (#15782)
Rich-Harris May 1, 2026
522ac32
Version Packages (#15769)
github-actions[bot] May 1, 2026
e547ec1
fix: resolve user files with drive letter on Windows (#15793)
teemingc May 4, 2026
9cfa07d
Version Packages (#15795)
github-actions[bot] May 5, 2026
04391e5
chore: try changesets 3 pre-release (#15794)
benmccann May 5, 2026
9c6d46a
chore(deps): update pnpm/action-setup action to v6 (#15703)
renovate[bot] May 5, 2026
2155b42
chore(deps): update pnpm to v10.33.3 (#15797)
renovate[bot] May 5, 2026
6bd7aba
chore(deps): update pnpm to v10.33.4 (#15801)
renovate[bot] May 6, 2026
a45e720
feat: warn on unread validation issues (#15653)
Rich-Harris May 7, 2026
ea0b9a7
fix: abort navigation after async rendering if obsolete (#15811)
dummdidumm May 7, 2026
785cdd3
chore(deps): update pnpm/action-setup action to v6.0.6 (#15818)
renovate[bot] May 9, 2026
d3b5257
fix: skip refreshing queries on full-page reload form submissions (#1…
ottomated May 11, 2026
2549a44
feat: allow 'submit' and 'hidden' form fields to accept numbers and b…
ottomated May 11, 2026
db8e8ae
Version Packages (#15810)
github-actions[bot] May 14, 2026
dadaefc
Merge commit from fork
elliott-with-the-longest-name-on-github May 14, 2026
16b07a2
chore: bump svelte and devalue (#15836)
elliott-with-the-longest-name-on-github May 14, 2026
d020406
Version Packages (#15838)
github-actions[bot] May 14, 2026
786084a
chore(deps): bump @opentelemetry/exporter-prometheus from 0.214.0 to …
dependabot[bot] May 15, 2026
0395c3e
fix: regression from consolidating dev checks (#15852)
teemingc May 15, 2026
268bac4
chore: add names for static adapter test apps (#15851)
teemingc May 17, 2026
844f17d
fix: avoid conflict for routes ending with optional parameters (#15861)
teemingc May 18, 2026
efaf661
chore: replace `als.enterWith` with `als.run` (#15848)
teemingc May 18, 2026
9b3b09d
chore(deps): update pnpm/action-setup action to v6.0.8 (#15821)
renovate[bot] May 18, 2026
eea3007
fix: round-trip `.as('hidden', booleanValue)` correctly (#15858)
hjaber May 18, 2026
f294e96
feat: programmatic form submissions (#15657)
Rich-Harris May 18, 2026
3adcb7c
chore(deps): update dependency dts-buddy to ^0.8.0 (#15870)
renovate[bot] May 19, 2026
c43a098
chore: remove unused eslint disable comment (#15871)
teemingc May 19, 2026
81de68d
chore: remove unnecessary arg in `build_server.js` (#15850)
teemingc May 19, 2026
f051600
docs: fix some broken indentation (#15872)
Rich-Harris May 19, 2026
e4c8448
feat: Isomorphic caching for queries (#15779)
elliott-with-the-longest-name-on-github May 19, 2026
9472a06
chore(deps): bump uuid from 11.1.0 to 13.0.0 in the npm_and_yarn grou…
dependabot[bot] May 20, 2026
69b5787
fix: prefer the default error page when failing to decode the URL pat…
teemingc May 21, 2026
4b96329
chore: bump vitest (#15874)
teemingc May 22, 2026
1949057
chore(prefetch): disable link prefetching on slow internet connection…
Guanran928 May 22, 2026
0cc67d9
fix: avoid build warnings about undefined hooks on Windows (#15895)
teemingc May 22, 2026
e75024c
feat: LiveQuery self-iterability (#15878)
elliott-with-the-longest-name-on-github May 22, 2026
95ca921
fix: remove Content-Length dependency in binary form deserialization …
alexbjorlig May 22, 2026
8feb2af
chore: dedupe replacer code (#15877)
teemingc May 22, 2026
1817da0
fix: support `exactOptionalPropertyTypes` for optional route params (…
RazinShafayet2007 May 22, 2026
4f961ab
Version Packages (#15853)
github-actions[bot] May 22, 2026
285f68b
chore: bump Vitest util deps (#15897)
teemingc May 22, 2026
131fdc7
fix: regression where routes starting and ending with a route group a…
teemingc May 23, 2026
b714743
Version Packages (#15904)
github-actions[bot] May 24, 2026
4e69683
chore: bump `@types/node` (#15911)
teemingc May 25, 2026
c926269
Revert "chore(prefetch): disable link prefetching on slow internet co…
teemingc May 27, 2026
8790376
fix: regression with `data-sveltekit-preload-*` for the same link (#1…
teemingc May 27, 2026
b0e3b19
docs: fix `query.live` snippet (#15918)
teemingc May 28, 2026
6371f4c
docs: actual ambient fix for query.live snippet (#15923)
teemingc May 28, 2026
8102ad3
chore: fix CI Playwright installs hanging (#15925)
teemingc May 29, 2026
05bbf34
chore: bump `svelte2tsx` (#15896)
teemingc May 29, 2026
b684e88
fix: catch possible stream error on the client (#15929)
teemingc May 29, 2026
600a388
fix: avoid generating `_app/env.js` if unused (#15940)
teemingc Jun 2, 2026
85d92d9
docs: remove await on server side query.set (#15905)
hyunbinseo Jun 2, 2026
a2dc8cd
fix: preserve multiple Set-Cookie headers on 304 responses (#15902)
MathiasWP Jun 2, 2026
aac7a5e
chore: hide `navigating.current` error in a DEV check (#15945)
teemingc Jun 2, 2026
6bfb01f
feat: support passing Svelte(Kit) config via Vite plugin (#15944)
dummdidumm Jun 2, 2026
2c86a63
Version Packages (#15916)
github-actions[bot] Jun 2, 2026
fa335bd
fix: remove check for svelte.config.js before running `sync` (#15946)
Rich-Harris Jun 2, 2026
b8dbdcf
chore: move playground config to vite.config.js (#15947)
Rich-Harris Jun 2, 2026
3f11f35
fix: generate a placeholder tsconfig.json to squelch sync-time warnin…
Rich-Harris Jun 2, 2026
0dc0548
feat: explicit environment variables (#15934)
Rich-Harris Jun 2, 2026
00d81fa
fix: allow use of `$app/env/public` in service workers (#15950)
Rich-Harris Jun 3, 2026
9cdca56
fix: close `import * from '$app/env/public'` loophole (#15951)
Rich-Harris Jun 3, 2026
d338dae
Version Packages (#15949)
github-actions[bot] Jun 4, 2026
010a3a7
docs: add filename to .env block, fix filename on src/app.html (#15958)
Rich-Harris Jun 5, 2026
b4942b4
feat: use SSE in `query.live` to avoid weird middleman quirks with no…
elliott-with-the-longest-name-on-github Jun 5, 2026
e3ff1a4
chore: add parents to error nodes (#15955)
teemingc Jun 5, 2026
f0ba6e0
fix: keep vite out of the $app/env runtime validator (#15953)
hjaber Jun 5, 2026
17fadaa
fix: ensure version is defined when using $app/env with explicit env …
Nic-Polumeyv Jun 7, 2026
fc53d88
chore(deps): update pnpm to v10.34.1 (#15919)
renovate[bot] Jun 7, 2026
f57a4bc
fix: use forward slashes in generated `env.d.ts` import path on Windo…
Nic-Polumeyv Jun 7, 2026
98ab0e2
chore: better internal types for page options (#15976)
teemingc Jun 7, 2026
a31fdc6
docs: fix explicit env vars docs version (#15968)
WarningImHack3r Jun 7, 2026
0fd507c
fix: allow `$app/environment` with a warning when `explicitEnvironmen…
Rich-Harris Jun 8, 2026
33dec0e
Version Packages (#15962)
github-actions[bot] Jun 8, 2026
06e78cf
chore: cache Deno installs (#15981)
teemingc Jun 8, 2026
1a2c1fd
fix: avoid adding the component to the server node if SSR is turned o…
teemingc Jun 8, 2026
c630529
feat: allow commands to receive `File` objects (#15978)
Rich-Harris Jun 8, 2026
1c30797
Version Packages (#15984)
github-actions[bot] Jun 8, 2026
3968fb9
fix: skip client build if all routes have CSR disabled (#15936)
teemingc Jun 8, 2026
3b1babe
turn blockquote into a note (#15989)
Rich-Harris Jun 8, 2026
b8d2b4b
docs: fix type error in service worker example (#15997)
teemingc Jun 10, 2026
607713e
fix: copy public directory assets if client build is skipped (#16004)
teemingc Jun 10, 2026
372a6a6
fix: dedupe remote data (#15991)
Rich-Harris Jun 11, 2026
0c35a6c
add missing changeset (#16012)
Rich-Harris Jun 11, 2026
ce77bf3
Version Packages (#15988)
github-actions[bot] Jun 11, 2026
9d963e4
fix: reset queries before navigating when `invalidateAll` is set (#16…
Rich-Harris Jun 11, 2026
7e4cade
fix: don't emit the dev bootstrap into builds with a non-standard NOD…
Nic-Polumeyv Jun 12, 2026
ae93f99
docs: fix `validate` -> `schema` in explicit env vars documentation (…
Sajith15 Jun 12, 2026
1f9bc79
fix: regression in loading assets for apps configured with absolute p…
teemingc Jun 12, 2026
b82ba81
fix: don't emit the unused bundle and stylesheet files when using `bu…
Nic-Polumeyv Jun 12, 2026
90f9126
chore: upgrade pnpm
benmccann Jun 14, 2026
c5382b7
Version Packages (#16016)
github-actions[bot] Jun 14, 2026
361306c
docs: make it clearer that you shouldn't blindly trust params/url in …
dummdidumm Jun 14, 2026
f5710ee
chore: Supply chain hardening (#15876)
elliott-with-the-longest-name-on-github Jun 15, 2026
3837fde
docs: fix missing `error` section (#16044)
teemingc Jun 15, 2026
b42cc23
chore: upgrade GitHub Actions
benmccann Jun 15, 2026
7751d60
fix: ensure pnpm global virtual store works (#16045)
teemingc Jun 15, 2026
4add7be
chore(deps): bump esbuild from 0.25.12 to 0.28.1 in the npm_and_yarn …
dependabot[bot] Jun 15, 2026
2b6dc0a
fix: avoid colliding with user-typed `platform.env` (#16043)
teemingc Jun 15, 2026
ab190ae
fix: avoid loading universal nodes during build analysis when using a…
teemingc Jun 15, 2026
1cfc838
fix: normalize path separators when comparing config (#16037)
theodorejb Jun 15, 2026
5ced880
fix: mark remote function responses as non-cacheable (#16020)
elliott-with-the-longest-name-on-github Jun 15, 2026
f3f0c94
fix: allow `preloadCode` to be called during initial page load (#16028)
Nic-Polumeyv Jun 15, 2026
cc68acb
fix: decode base64-serialized fetch bodies before caching them for cl…
agafonovim Jun 15, 2026
7bdefe5
chore: fix broken release workflow (#16048)
Rich-Harris Jun 15, 2026
726b13e
chore: Add tests for un-covered behaviors in LiveQuery (#16019)
elliott-with-the-longest-name-on-github Jun 15, 2026
d33bc6b
fix: only reference `env.js`/`env.script.js` if dynamic public env va…
Nic-Polumeyv Jun 16, 2026
21c780e
chore(deps): bump vite from 6.4.2 to 6.4.3 in the npm_and_yarn group …
dependabot[bot] Jun 16, 2026
a34e663
fix: preserve status code when remote function transport requests fai…
elliott-with-the-longest-name-on-github Jun 16, 2026
82bcb7d
fix: prevent unhandled rejections from reactively-consumed remote res…
elliott-with-the-longest-name-on-github Jun 16, 2026
42e9bdd
chore: add `dts-buddy` to minimum age exclude list (#16057)
teemingc Jun 16, 2026
c62ddd0
chore: bump prettier-plugin-svelte (#16055)
Rich-Harris Jun 16, 2026
8bae090
chore: remove unnecessary condition (#16056)
Rich-Harris Jun 16, 2026
80cc084
fix: throw an error when prerendering a root +server.js that returns …
geodask Jun 16, 2026
c3b2c34
fix: allow runtime/build only explicit environment variable validatio…
teemingc Jun 16, 2026
913643c
chore: fix flaky tests (#16059)
Rich-Harris Jun 16, 2026
0ccdb68
chore: make `set_env` synchronous (#16060)
Rich-Harris Jun 16, 2026
33fdd3f
Version Packages (#16050)
github-actions[bot] Jun 16, 2026
758e781
docs: use modern dynamic-component syntax in the {#await} FAQ example…
DucMinhNe Jun 16, 2026
a4748be
docs(adapter-node): list which env vars custom servers must implement…
vamshikrishnaramasamy Jun 16, 2026
0dd7659
fix: support WebSocket protocol and Trusted Types Eval for CSP source…
ThaUnknown Jun 16, 2026
f430a68
fix: pass all unknown options from the sveltekit Vite plugin through …
Rich-Harris Jun 16, 2026
57b7b7b
fix: omit empty `file` inputs from remote form data (#15898)
RazinShafayet2007 Jun 16, 2026
03e9f66
feat: precompress prerendered .md and .mdx files (#15893)
sirkostya009 Jun 16, 2026
961ba01
fix: correct relative paths on error page for a missing `__data.json`…
ATOM00blue Jun 16, 2026
1dbff3f
fix: ensure `base` from `$service-worker` is available during dev (#1…
teemingc Jun 16, 2026
6fbf2b6
fix: tick before resetting forms (#15805)
ottomated Jun 17, 2026
d3aa5fe
fix: restore snapshots after afterNavigate callbacks (#16066)
geodask Jun 17, 2026
724811d
fix: log actual adapter-node listening address (#15899)
puneetdixit200 Jun 17, 2026
1c7a8dc
feat: warn the user when they forget to make boolean inputs optional …
ottomated Jun 17, 2026
d2e108c
fix: Live query reconnect issues (#16022)
elliott-with-the-longest-name-on-github Jun 17, 2026
0d8ef59
chore: await web-first assertions in basics client tests (#16068)
voidmatcha Jun 17, 2026
8740132
fix: show error.html when root layout load() throws in SPA mode (#15798)
Zelys-DFKH Jun 17, 2026
4458582
fix: bundle entrypoints alongside app code (#16069)
Rich-Harris Jun 17, 2026
860b3c7
fix: remove `types: ['node']` from generated tsconfig (#15709)
Copilot Jun 17, 2026
a3ff2c5
feat: export `EnhancedImgAttributes` type (#15649)
bennajah Jun 17, 2026
63f1b0b
fix: blur active element before component update during navigation (#…
MathiasWP Jun 18, 2026
59f5262
fix: don't cache missing immutable asset 404s (#16077)
davidcarlsonberg Jun 18, 2026
719c842
fix: enhanced img filter out query ids (#15617)
max-got Jun 18, 2026
f8c842c
fix: prefer pages over endpoints when prerendering (#16076)
Rich-Harris Jun 18, 2026
ffc3b82
chore(deps): update actions/checkout action to v7 (#16084)
renovate[bot] Jun 18, 2026
b8883f4
chore: remove redundant JSDoc (#16079)
teemingc Jun 18, 2026
de47227
chore: correctly type keys of the `URL` object (#16078)
teemingc Jun 18, 2026
4eabadc
fix: fail early if a route with `+page` and `+server` is marked as pr…
Rich-Harris Jun 18, 2026
e8c8d84
chore: DRY out __sveltekit_xyz123 stuff (#16085)
Rich-Harris Jun 18, 2026
276744d
fix: preflight schemas apply correctly when chained before `for` (#15…
PranavAgarkar07 Jun 18, 2026
4c9b8f1
Version Packages (#16062)
github-actions[bot] Jun 18, 2026
5c76121
fix: allow optional remote form schema fields under `{exactOptionalPr…
echocrow Jun 18, 2026
f38da40
feat(enhanced-img): add configurable image defaults and imagetools op…
blt-r Jun 18, 2026
7b43b29
chore: fix more flaky tests (#16061)
Rich-Harris Jun 18, 2026
5a9b7f3
fix (enhanced-img): the basePixels bug (#16091)
blt-r Jun 19, 2026
d71dabb
chore: fix internal types export target (#16113)
2lll5 Jun 22, 2026
2992e17
fix: avoid overwriting `codeSplitting` for split apps (#16118)
teemingc Jun 22, 2026
ea309d4
fix: ensure `ENV_PREFIX.length` works (#16106)
teemingc Jun 22, 2026
8e418cf
chore: add descriptions to Node adapter options (#16105)
teemingc Jun 22, 2026
6261b50
fix: ensure server root directory is resolved correctly (#16114)
teemingc Jun 22, 2026
6ddf670
fix: avoid circular dependency (#16115)
teemingc Jun 22, 2026
e87dc07
revert #15354 (#16122)
Rich-Harris Jun 22, 2026
cf15fa0
fix: add handleInvalidUrl prerender option for non-HTTP URL schemes (…
Zelys-DFKH Jun 22, 2026
c54613f
chore: add failing tests for adapter-node (#16104)
teemingc Jun 22, 2026
c5d0e83
Version Packages (#16086)
github-actions[bot] Jun 22, 2026
9dd859f
chore: tighten up client.js types (#15928)
teemingc Jun 22, 2026
2184960
fix: call reset function via prototype (#16138)
Naora Jun 23, 2026
118af9d
chore: move Node adapter e2e tests to platform tests (#16136)
teemingc Jun 23, 2026
296f2b5
docs: fix navigation type JSDoc formatting (#16128)
vamshikrishnaramasamy Jun 23, 2026
c6c0d6b
fix: EADDRINUSE: address already in use - when a stale SOCKET_PATH fi…
marko-rbn Jun 23, 2026
b6aabf2
chore: remove Node 18 and 20 from platform test matrix (#16144)
teemingc Jun 23, 2026
3d9856c
chore: update vitest and opentelemetry dev deps (#16143)
teemingc Jun 23, 2026
2c21484
docs: show how you can render all links on server (#16146)
benmccann Jun 23, 2026
5e319b6
chore: fix navigation `type` hover info (#16147)
Rich-Harris Jun 23, 2026
e0af2c7
chore: upgrade dependencies (#16149)
benmccann Jun 23, 2026
a8c2f66
docs: explain behaviour of defaults (#16145)
Rich-Harris Jun 23, 2026
a3993dc
docs: clarify requested usage context (#16129)
vamshikrishnaramasamy Jun 24, 2026
81f253e
fix: skip native_navigation when __data.json returns 404 on fallback …
Zelys-DFKH Jun 24, 2026
2633f6a
fix: add `X-Accel-Buffering: no` header to `text/event-stream` respon…
Rich-Harris Jun 24, 2026
33a868d
docs: clarify `query` vs `prerender` on prerendered pages (#15408)
RazinShafayet2007 Jun 24, 2026
7aa4cd0
docs: remove mention that some browsers do not support esm in service…
teemingc Jun 24, 2026
c426c6e
feat: expose `RemoteFormEnhanceInstance` and `RemoteFormEnhanceCallba…
RazinShafayet2007 Jun 24, 2026
8d3c865
fix: ignore third-party monkeypatches in pushState/replaceState warni…
FrankFMY Jun 24, 2026
9161740
fix: strip field prefix before erroring on duplicates (#16151)
Rich-Harris Jun 24, 2026
6bde3b6
fix: snapshot form fields on read (#16150)
Rich-Harris Jun 24, 2026
e82a0a8
feat: set value of `submit` fields when form is submitted (#15979)
Rich-Harris Jun 24, 2026
fef1827
Version Packages (#16142)
github-actions[bot] Jun 24, 2026
53d37f9
fix: clear issues and touched states on form reset (#16163)
Rich-Harris Jun 25, 2026
4f6bcbb
feat(remote form): expose `submitted` property (#14811)
hrueger Jun 25, 2026
dcbafa4
chore: pin Deno version in CI (#16176)
teemingc Jun 26, 2026
65d3344
docs: mention default value for `static` in environment variables sec…
sacrosanctic Jun 26, 2026
f2fd815
docs: illustrate how to check validity (#16186)
Rich-Harris Jun 30, 2026
fd628a5
fix: return `undefined` from `fields.branch.issues()` when only `fiel…
Rich-Harris Jun 30, 2026
18801ae
Version Packages (#16167)
github-actions[bot] Jul 1, 2026
82790de
docs: update action versions in 50-adapter-static.md (#16204)
guillett Jul 2, 2026
df32f6f
fix: prevent prototype pollution when deleting file inputs (#16218)
dummdidumm Jul 2, 2026
82b0370
fix: prevent unhandled promise rejection (#16219)
dummdidumm Jul 2, 2026
d89edcc
Version Packages (#16221)
github-actions[bot] Jul 2, 2026
5ef6ffb
chore: fix GitHub changelog not being automated (#16242)
teemingc Jul 6, 2026
a5bd7e2
fix: set `define` values on `globalThis` when running Vitest (#16246)
Rich-Harris Jul 6, 2026
de0998a
chore: don't persist git credentials on checkout in release workflow …
Andarist Jul 6, 2026
1b4adcc
Version Packages (#16250)
github-actions[bot] Jul 8, 2026
0274a20
chore: backport Netlify platform tests (#16281)
teemingc Jul 8, 2026
5c38e51
fix: keep CSS URL references as absolute for `relative: false` (#16315)
teemingc Jul 10, 2026
14d7d5a
fix: detect destructured route exports during type generation (#16329)
thribhuvan003 Jul 13, 2026
b557b1b
fix: align MAX_COOKIE_SIZE with RFC 6265bis (#16322)
Socialpranker Jul 13, 2026
da5b08e
docs: explain when the service worker is updated (#16310)
Nic-Polumeyv Jul 13, 2026
80b18f5
Version Packages (#16316)
github-actions[bot] Jul 13, 2026
ffa0e3b
fix: don't disable CSRF protection in builds with a non-production NO…
Nic-Polumeyv Jul 14, 2026
78f28f1
feat: move `defineEnvVars` to `@sveltejs/kit/env` (#16378)
Rich-Harris Jul 17, 2026
4da36e6
Version Packages (#16343)
github-actions[bot] Jul 17, 2026
5211bf9
fix: get build working (#16393)
teemingc Jul 17, 2026
c1665b9
docs: update hooks page (#16417)
Rich-Harris Jul 19, 2026
4c2355f
Version Packages (#16418)
github-actions[bot] Jul 19, 2026
fafafef
docs: update hooks docs (again) (#16420)
Rich-Harris Jul 19, 2026
08cfba0
docs: update hooks docs (again) (again) (#16421)
Rich-Harris Jul 19, 2026
128d03a
docs: fix some bad snippets (#16504)
Rich-Harris Jul 24, 2026
b27c82f
docs: fix twoslash typo (#16514)
Rich-Harris Jul 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 6 additions & 3 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
{
"$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json",
"changelog": ["@svitejs/changesets-changelog-github-compact", { "repo": "sveltejs/kit" }],
"changelog": [
"@changesets/changelog-github",
{ "repo": "sveltejs/kit", "template": "\n- {summary} {ref}" }
],
"commit": false,
"linked": [],
"access": "public",
"baseBranch": "master",
"baseBranch": "main",
"bumpVersionsWithWorkspaceProtocolOnly": true,
"ignore": ["!(@sveltejs/*|create-svelte|svelte-migrate)"]
"ignore": ["!(@sveltejs/*)"]
}
3 changes: 1 addition & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@ root = true
end_of_line = lf
insert_final_newline = true
indent_style = tab
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
trim_trailing_whitespace = true
55 changes: 55 additions & 0 deletions .eslint/no-runtime-to-exports-imports.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
// @ts-expect-error no types here
import path from 'node:path';

/**
* @type {import('eslint').Rule.RuleModule}
*/
export default {
meta: {
type: 'problem',
docs: {
description: 'disallow relative imports from src/runtime to src/exports',
category: 'Possible Errors',
recommended: true
},
schema: [],
messages: {
noRuntimeToExportsImport:
'Relative imports from src/runtime to src/exports are not allowed because they can cause Vite to resolve the same module both via regular Node and internal Vite. Use internal import maps or `@sveltejs/kit/internal` instead.'
}
},

create(context) {
const filename = context.filename;

// Only apply this rule to files in packages/kit/src/runtime
const in_runtime = filename.includes(path.join('packages', 'kit', 'src', 'runtime'));

if (!in_runtime) {
return {};
}

return {
ImportDeclaration(node) {
const import_path = node.source.value;

// Check if this is a relative import
if (typeof import_path === 'string' && import_path.startsWith('.')) {
// Resolve the import path relative to the current file
const current_dir = path.dirname(filename);
const resolved_path = path.resolve(current_dir, import_path);

// Check if the resolved path points to src/exports
const exports_path = path.join('packages', 'kit', 'src', 'exports');

if (resolved_path.includes(exports_path)) {
context.report({
node: node.source,
messageId: 'noRuntimeToExportsImport'
});
}
}
}
};
}
};
18 changes: 0 additions & 18 deletions .eslintrc.json

This file was deleted.

10 changes: 10 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
closes #<!-- Add the related issue number here. Repeat this line for each additional issue it closes -->

<!-- Explain the goal of the PR, why it is needed, and what has been changed to achieve that goal -->

---

### Please don't delete this checklist! Before submitting the PR, please make sure you do the following:
- [ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
- [ ] This message body should clearly illustrate what problems it solves.
Expand All @@ -8,3 +14,7 @@

### Changesets
- [ ] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running `pnpm changeset` and following the prompts. Changesets that add features should be `minor` and those that fix bugs should be `patch`. Please prefix changeset messages with `feat:`, `fix:`, or `chore:`.

### Edits

- [ ] Please ensure that 'Allow edits from maintainers' is checked. PRs without this option may be closed.
42 changes: 42 additions & 0 deletions .github/actions/netlify-deploy/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: 'Netlify Deploy'
description: 'Set up the repo and deploy a test app to Netlify'

inputs:
test-app-dir:
description: 'Path to the test app directory'
required: true
netlify-project-id:
description: 'Netlify project ID'
required: true
netlify-token:
description: 'Netlify authentication token'
required: true
outputs:
deployment-url:
description: 'URL of the deployed preview'
value: ${{ steps.deploy.outputs.url }}

runs:
using: 'composite'
steps:
- uses: ./.github/actions/node-setup

- name: Build adapter-netlify files
shell: bash
working-directory: packages/adapter-netlify
run: pnpm prepublishOnly

- name: Install Netlify CLI
shell: bash
run: pnpm i -g netlify-cli

- name: Deploy to Netlify
id: deploy
shell: bash
env:
TEST_APP_DIR: ${{ inputs.test-app-dir }}
NETLIFY_AUTH_TOKEN: ${{ inputs.netlify-token }}
NETLIFY_PROJECT_ID: ${{ inputs.netlify-project-id }}
run: |
TEST_APP_NAME=$(cat "$TEST_APP_DIR/package.json" | jq -r '.name')
echo "url=$(netlify deploy --json --filter="$TEST_APP_NAME" --dir="$TEST_APP_DIR/build" --functions=".netlify/v1/functions" --auth="$NETLIFY_AUTH_TOKEN" --site="$NETLIFY_PROJECT_ID" | jq -r '.deploy_url')" >> "$GITHUB_OUTPUT"
32 changes: 32 additions & 0 deletions .github/actions/node-setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: 'Node Setup'
description: 'Set up the repo and run it on Node.js'

inputs:
node-version:
description: 'The Node version to install'
required: true
default: '24'

runs:
using: 'composite'
steps:
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9

- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ inputs.node-version }}
cache: pnpm

- name: Install dependencies
shell: bash
run: pnpm install --frozen-lockfile

- name: setup overrides for inputs.node-version
shell: bash
if: ${{ inputs.node-version == '18' }}
run:
| # copies catalogs.node-xx to overrides in pnpm-workspace.yaml so the subsequent `pnpm install` enforces them
yq -i '.overrides =.catalogs."node-18"' pnpm-workspace.yaml
pnpm install --no-frozen-lockfile
git checkout pnpm-lock.yaml pnpm-workspace.yaml # revert changes to pnpm files to avoid cache key changes
pnpm --dir packages/kit ls vite @sveltejs/vite-plugin-svelte
31 changes: 31 additions & 0 deletions .github/actions/platform-test/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: 'Platform Test'
description: 'Run Playwright tests against a deployed platform preview'

inputs:
test-app-dir:
description: 'Path to the test app directory'
required: true
deployment-url:
description: 'URL of the deployed preview to test against'

runs:
using: 'composite'
steps:
- name: Install Playwright
shell: bash
run: pnpm playwright install chromium --no-shell

- name: Run Playwright tests
shell: bash
working-directory: ${{ inputs.test-app-dir }}
env:
DEPLOYMENT_URL: ${{ inputs.deployment-url }}
run: pnpm test:platform

- name: Upload test artifacts
if: failure()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: platform-test-results-${{ github.job }}
path: ${{ inputs.test-app-dir }}/test-results
retention-days: 3
40 changes: 40 additions & 0 deletions .github/actions/vercel-deploy/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: 'Vercel Deploy'
description: 'Set up the repo and deploy a test app to Vercel'

inputs:
# Important: When setting up a new Vercel test app, make sure
# to set the root directory in the dashboard to the correct path.
# The `vercel deploy` command runs from the root of the repository,
# so it has to be able to look up the test app's dir in order to know
# what to deploy.
vercel-project-id:
description: 'Vercel project ID for the test app'
required: true
vercel-token:
description: 'Vercel authentication token'
required: true
vercel-org-id:
description: 'Vercel organization ID'
required: true
outputs:
deployment-url:
description: 'URL of the deployed preview'
value: ${{ steps.deploy.outputs.url }}

runs:
using: 'composite'
steps:
- uses: ./.github/actions/node-setup

- name: Install Vercel CLI
shell: bash
run: pnpm i -g vercel

- name: Deploy to Vercel
id: deploy
shell: bash
env:
VERCEL_TOKEN: ${{ inputs.vercel-token }}
VERCEL_ORG_ID: ${{ inputs.vercel-org-id }}
VERCEL_PROJECT_ID: ${{ inputs.vercel-project-id }}
run: echo "url=$(vercel deploy --yes --token="$VERCEL_TOKEN")" >> "$GITHUB_OUTPUT"
1 change: 1 addition & 0 deletions .github/copilot-instructions.md
11 changes: 4 additions & 7 deletions .github/workflows/audit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,11 @@ permissions:

jobs:
Audit:
# prevents this action from running on forks
if: github.repository == 'sveltejs/kit'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2.4.0
- uses: actions/setup-node@v3
with:
node-version: '20.x'
cache: pnpm
- run: pnpm install --frozen-lockfile
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: ./.github/actions/node-setup
# check prod dependencies as these would affect users
- run: pnpm audit --prod
64 changes: 64 additions & 0 deletions .github/workflows/autofix-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Autofix Lint

on:
issue_comment:
types: [created]
workflow_dispatch:

permissions: {}

jobs:
autofix-lint:
permissions:
contents: write # to push the generated types commit
pull-requests: read # to resolve the PR head ref
# prevents this action from running on forks
if: |
github.repository == 'sveltejs/kit' &&
(
github.event_name == 'workflow_dispatch' ||
(
github.event.issue.pull_request != null &&
github.event.comment.body == '/autofix' &&
contains(fromJSON('["OWNER", "MEMBER", "COLLABORATOR"]'), github.event.comment.author_association)
)
)
runs-on: ubuntu-latest
steps:
- name: Get PR ref
if: github.event_name != 'workflow_dispatch'
id: pr
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
const { data: pull } = await github.rest.pulls.get({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number
});
if (pull.head.repo.full_name !== `${context.repo.owner}/${context.repo.repo}`) {
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: 'Cannot autofix: this PR is from a forked repository. The autofix workflow can only push to branches within this repository.'
});
core.setFailed('PR is from a fork');
}
core.setOutput('ref', pull.head.ref);
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
if: github.event_name == 'workflow_dispatch' || steps.pr.outcome == 'success'
with:
ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || steps.pr.outputs.ref }}
- uses: ./.github/actions/node-setup
- name: Run prettier
run: pnpm format
- name: Generate types
run: pnpm -F @sveltejs/kit generate:types
- name: Commit changes
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add -A
git diff --staged --quiet || git commit -m "chore: autofix lint"
git push origin HEAD
Loading