From ebce9ca356a95ae9dc05552191f1e62eb57ec427 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Fri, 16 Jan 2026 10:08:05 +0100 Subject: [PATCH 1/3] chore(deps): Bump `@sveltejs/kit` devDependency to `2.49.5` --- packages/sveltekit/package.json | 2 +- yarn.lock | 49 +++++++++++++++++++++++---------- 2 files changed, 36 insertions(+), 15 deletions(-) diff --git a/packages/sveltekit/package.json b/packages/sveltekit/package.json index 61f950b92bef..96db0ab20d69 100644 --- a/packages/sveltekit/package.json +++ b/packages/sveltekit/package.json @@ -59,7 +59,7 @@ }, "devDependencies": { "@babel/types": "^7.26.3", - "@sveltejs/kit": "^2.0.2", + "@sveltejs/kit": "^2.49.5", "@sveltejs/vite-plugin-svelte": "^3.0.0", "svelte": "^4.2.8", "vite": "^5.4.11" diff --git a/yarn.lock b/yarn.lock index a7e0aa15151b..1047bd6b9186 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7947,22 +7947,29 @@ "@supabase/realtime-js" "2.11.2" "@supabase/storage-js" "2.7.1" -"@sveltejs/kit@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@sveltejs/kit/-/kit-2.0.2.tgz#bd02523fe570ddaf89148bffb1eb2233c458054b" - integrity sha512-xFpnLxVQ4KgCbj4Cj2zCFUcyfAoO87nn4nf3XcGJ7ZtOwy20tZ91vXWrtyuum8hakJWVwdNYyGXG9aBoIEYpFQ== +"@sveltejs/acorn-typescript@^1.0.5": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@sveltejs/acorn-typescript/-/acorn-typescript-1.0.8.tgz#69c746a7c232094c117c50dedbd1279fc64887b7" + integrity sha512-esgN+54+q0NjB0Y/4BomT9samII7jGwNy/2a3wNZbT2A2RpmXsXwUt24LvLhx6jUq2gVk4cWEvcRO6MFQbOfNA== + +"@sveltejs/kit@^2.49.5": + version "2.49.5" + resolved "https://registry.yarnpkg.com/@sveltejs/kit/-/kit-2.49.5.tgz#da173805592e3ebd483bb77d45ef424078f0aaff" + integrity sha512-dCYqelr2RVnWUuxc+Dk/dB/SjV/8JBndp1UovCyCZdIQezd8TRwFLNZctYkzgHxRJtaNvseCSRsuuHPeUgIN/A== dependencies: + "@standard-schema/spec" "^1.0.0" + "@sveltejs/acorn-typescript" "^1.0.5" "@types/cookie" "^0.6.0" + acorn "^8.14.1" cookie "^0.6.0" - devalue "^4.3.2" - esm-env "^1.0.0" + devalue "^5.6.2" + esm-env "^1.2.2" kleur "^4.1.5" magic-string "^0.30.5" - mrmime "^1.0.1" + mrmime "^2.0.0" sade "^1.8.1" set-cookie-parser "^2.6.0" - sirv "^2.0.3" - tiny-glob "^0.2.9" + sirv "^3.0.0" "@sveltejs/vite-plugin-svelte-inspector@^2.1.0": version "2.1.0" @@ -14543,6 +14550,11 @@ devalue@^5.0.0: resolved "https://registry.yarnpkg.com/devalue/-/devalue-5.3.2.tgz#1d9a00f0d126a2f768589f236da8b67d6988d285" integrity sha512-UDsjUbpQn9kvm68slnrs+mfxwFkIflOhkanmyabZ8zOYk8SMEIbJ3TK+88g70hSIeytu4y18f0z/hYHMTrXIWw== +devalue@^5.6.2: + version "5.6.2" + resolved "https://registry.yarnpkg.com/devalue/-/devalue-5.6.2.tgz#931e2bb1cc2b299e0f0fb9e4e5be8ebf521a25b8" + integrity sha512-nPRkjWzzDQlsejL1WVifk5rvcFi/y1onBRxjaFMjZeR9mFpqu2gmAZ9xUB9/IEanEP/vBtGeGganC/GO1fmufg== + devlop@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" @@ -16521,10 +16533,10 @@ eslint@8.57.0: strip-ansi "^6.0.1" text-table "^0.2.0" -esm-env@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esm-env/-/esm-env-1.0.0.tgz#b124b40b180711690a4cb9b00d16573391950413" - integrity sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA== +esm-env@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/esm-env/-/esm-env-1.2.2.tgz#263c9455c55861f41618df31b20cb571fc20b75e" + integrity sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA== esm@^3.2.25, esm@^3.2.4: version "3.2.25" @@ -22857,7 +22869,7 @@ mri@^1.1.0, mri@^1.2.0: resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== -mrmime@^1.0.0, mrmime@^1.0.1: +mrmime@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" integrity sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw== @@ -28120,6 +28132,15 @@ sirv@^2.0.3, sirv@^2.0.4: mrmime "^2.0.0" totalist "^3.0.0" +sirv@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-3.0.2.tgz#f775fccf10e22a40832684848d636346f41cd970" + integrity sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g== + dependencies: + "@polka/url" "^1.0.0-next.24" + mrmime "^2.0.0" + totalist "^3.0.0" + sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" From 4144f63e287764919c550baf0d01d502ad807426 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Fri, 16 Jan 2026 10:30:49 +0100 Subject: [PATCH 2/3] dedupe lock --- yarn.lock | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1047bd6b9186..9ad1fe308e75 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14545,12 +14545,7 @@ devalue@^4.3.2: resolved "https://registry.yarnpkg.com/devalue/-/devalue-4.3.3.tgz#e35df3bdc49136837e77986f629b9fa6fef50726" integrity sha512-UH8EL6H2ifcY8TbD2QsxwCC/pr5xSwPvv85LrLXVihmHVC3T3YqTCIwnR5ak0yO1KYqlxrPVOA/JVZJYPy2ATg== -devalue@^5.0.0: - version "5.3.2" - resolved "https://registry.yarnpkg.com/devalue/-/devalue-5.3.2.tgz#1d9a00f0d126a2f768589f236da8b67d6988d285" - integrity sha512-UDsjUbpQn9kvm68slnrs+mfxwFkIflOhkanmyabZ8zOYk8SMEIbJ3TK+88g70hSIeytu4y18f0z/hYHMTrXIWw== - -devalue@^5.6.2: +devalue@^5.0.0, devalue@^5.6.2: version "5.6.2" resolved "https://registry.yarnpkg.com/devalue/-/devalue-5.6.2.tgz#931e2bb1cc2b299e0f0fb9e4e5be8ebf521a25b8" integrity sha512-nPRkjWzzDQlsejL1WVifk5rvcFi/y1onBRxjaFMjZeR9mFpqu2gmAZ9xUB9/IEanEP/vBtGeGganC/GO1fmufg== From 521c99bb1ca1185b11c532a9d84996cff1ba5288 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Fri, 16 Jan 2026 10:58:47 +0100 Subject: [PATCH 3/3] eslint-ignore deprecations --- .../src/client/browserTracingIntegration.ts | 4 ++++ packages/sveltekit/src/vite/svelteConfig.ts | 4 ++++ .../client/browserTracingIntegration.test.ts | 24 +++++++++++++++---- 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/packages/sveltekit/src/client/browserTracingIntegration.ts b/packages/sveltekit/src/client/browserTracingIntegration.ts index a9ed0040be20..98ba14981e38 100644 --- a/packages/sveltekit/src/client/browserTracingIntegration.ts +++ b/packages/sveltekit/src/client/browserTracingIntegration.ts @@ -55,6 +55,8 @@ function _instrumentPageload(client: Client): void { return; } + // TODO(v11): require svelte 5 or newer to switch to `page` from `$app/state` + // eslint-disable-next-line deprecation/deprecation page.subscribe(page => { if (!page) { return; @@ -76,6 +78,8 @@ function _instrumentPageload(client: Client): void { function _instrumentNavigations(client: Client): void { let routingSpan: Span | undefined; + // TODO(v11): require svelte 5 or newer to switch to `navigating` from `$app/state` + // eslint-disable-next-line deprecation/deprecation navigating.subscribe(navigation => { if (!navigation) { // `navigating` emits a 'null' value when the navigation is completed. diff --git a/packages/sveltekit/src/vite/svelteConfig.ts b/packages/sveltekit/src/vite/svelteConfig.ts index f1e908af9c93..ae0a29a25243 100644 --- a/packages/sveltekit/src/vite/svelteConfig.ts +++ b/packages/sveltekit/src/vite/svelteConfig.ts @@ -59,6 +59,10 @@ export async function loadSvelteConfig(): Promise { }); // We emit an update to the `page` store to simulate the SvelteKit router lifecycle + // TODO(v11): switch to `page` from `$app/state` // @ts-expect-error - page is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation page.set({ route: { id: 'testRoute' } }); // This should update the transaction name with the parameterized route: @@ -151,7 +153,9 @@ describe('browserTracingIntegration', () => { integration.afterAllSetup(fakeClient); // We emit an update to the `page` store to simulate the SvelteKit router lifecycle + // TODO(v11): switch to `page` from `$app/state` // @ts-expect-error - page is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation page.set({ route: { id: 'testRoute/:id' } }); // This should update the transaction name with the parameterized route: @@ -167,7 +171,9 @@ describe('browserTracingIntegration', () => { integration.afterAllSetup(fakeClient); // We emit an update to the `navigating` store to simulate the SvelteKit navigation lifecycle + // TODO(v11): switch to `navigating` from `$app/state` // @ts-expect-error - page is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set({ from: { route: { id: '/users' }, url: { pathname: '/users' } }, to: { route: { id: '/users/[id]' }, url: { pathname: '/users/7762' } }, @@ -185,7 +191,9 @@ describe('browserTracingIntegration', () => { integration.afterAllSetup(fakeClient); // We emit an update to the `navigating` store to simulate the SvelteKit navigation lifecycle + // TODO(v11): switch to `navigating` from `$app/state` // @ts-expect-error - page is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set({ from: { route: { id: '/users' }, url: { pathname: '/users' } }, to: { route: { id: '/users/[id]' }, url: { pathname: '/users/7762' } }, @@ -219,7 +227,9 @@ describe('browserTracingIntegration', () => { }); // We emit `null` here to simulate the end of the navigation lifecycle - // @ts-expect-error - page is a writable but the types say it's just readable + // TODO(v11): switch to `navigating` from `$app/state` + // @ts-expect-error - navigating is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set(null); expect(routingSpanEndSpy).toHaveBeenCalledTimes(1); @@ -234,7 +244,9 @@ describe('browserTracingIntegration', () => { integration.afterAllSetup(fakeClient); // We emit an update to the `navigating` store to simulate the SvelteKit navigation lifecycle - // @ts-expect-error - page is a writable but the types say it's just readable + // TODO(v11): switch to `navigating` from `$app/state` + // @ts-expect-error - navigating is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set({ from: { route: { id: '/users/[id]' }, url: { pathname: '/users/7762' } }, to: { route: { id: '/users/[id]' }, url: { pathname: '/users/7762' } }, @@ -250,7 +262,9 @@ describe('browserTracingIntegration', () => { // @ts-expect-error - the fakeClient doesn't satisfy Client but that's fine integration.afterAllSetup(fakeClient); - // @ts-expect-error - page is a writable but the types say it's just readable + // TODO(v11): switch to `navigating` from `$app/state` + // @ts-expect-error - navigating is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set({ from: { route: { id: '/users/[id]' }, url: { pathname: '/users/7762' } }, to: { route: { id: '/users/[id]' }, url: { pathname: '/users/223412' } }, @@ -289,7 +303,9 @@ describe('browserTracingIntegration', () => { // window.location.pathname is "/" in tests - // @ts-expect-error - page is a writable but the types say it's just readable + // TODO(v11): switch to `navigating` from `$app/state` + // @ts-expect-error - navigating is a writable but the types say it's just readable + // eslint-disable-next-line deprecation/deprecation navigating.set({ to: { route: {}, url: { pathname: '/' } }, });