From a953992a5bcb572ad410bb6a9ae3cafcfbc7d51b Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 3 Apr 2021 08:01:31 -0400 Subject: [PATCH 1/5] move page.js to page/index.js --- packages/kit/src/runtime/server/index.js | 2 +- packages/kit/src/runtime/server/{page.js => page/index.js} | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) rename packages/kit/src/runtime/server/{page.js => page/index.js} (99%) diff --git a/packages/kit/src/runtime/server/index.js b/packages/kit/src/runtime/server/index.js index d81c3e47735a..1db96e2c189d 100644 --- a/packages/kit/src/runtime/server/index.js +++ b/packages/kit/src/runtime/server/index.js @@ -1,5 +1,5 @@ import { createHash } from 'crypto'; -import render_page from './page.js'; +import render_page from './page/index.js'; import render_endpoint from './endpoint.js'; /** @param {string} body */ diff --git a/packages/kit/src/runtime/server/page.js b/packages/kit/src/runtime/server/page/index.js similarity index 99% rename from packages/kit/src/runtime/server/page.js rename to packages/kit/src/runtime/server/page/index.js index d4cef5bffdad..ca698f7dc814 100644 --- a/packages/kit/src/runtime/server/page.js +++ b/packages/kit/src/runtime/server/page/index.js @@ -2,8 +2,8 @@ import devalue from 'devalue'; import fetch, { Response } from 'node-fetch'; import { writable } from 'svelte/store'; import { parse, resolve, URLSearchParams } from 'url'; -import { normalize } from '../load.js'; -import { ssr } from './index.js'; +import { normalize } from '../../load.js'; +import { ssr } from '../index.js'; const s = JSON.stringify; From f714abfbe0d67fe86364da80277f00c76e6fd86b Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 3 Apr 2021 08:04:51 -0400 Subject: [PATCH 2/5] rename get_response to respond --- packages/kit/src/runtime/server/page/index.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/kit/src/runtime/server/page/index.js b/packages/kit/src/runtime/server/page/index.js index ca698f7dc814..cebdb9d6ea8d 100644 --- a/packages/kit/src/runtime/server/page/index.js +++ b/packages/kit/src/runtime/server/page/index.js @@ -18,7 +18,7 @@ const s = JSON.stringify; * }} opts * @returns {Promise} */ -async function get_response({ request, options, $session, route, status = 200, error }) { +async function respond({ request, options, $session, route, status = 200, error }) { const serialized_session = try_serialize($session, (error) => { throw new Error(`Failed to serialize session data: ${error.message}`); }); @@ -220,7 +220,7 @@ async function get_response({ request, options, $session, route, status = 200, e ? { ssr: options.ssr, router: options.router, hydrate: options.hydrate } : await component_promises[component_promises.length - 1]; } catch (e) { - return await get_response({ + return await respond({ request, options, $session, @@ -303,7 +303,7 @@ async function get_response({ request, options, $session, route, status = 200, e // TODO there's some logic that's duplicated in the client runtime, // it would be nice to DRY it out if possible if (loaded.error) { - return await get_response({ + return await respond({ request, options, $session, @@ -375,7 +375,7 @@ async function get_response({ request, options, $session, route, status = 200, e } catch (e) { if (error) throw e instanceof Error ? e : new Error(e); - return await get_response({ + return await respond({ request, options, $session, @@ -499,7 +499,7 @@ export default async function render_page(request, route, options) { const $session = await options.hooks.getSession({ context: request.context }); - const response = await get_response({ + const response = await respond({ request, options, $session, From df84f56b7b03aa9ccf33a30d94c8a15ea4f61e82 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 3 Apr 2021 08:05:29 -0400 Subject: [PATCH 3/5] always unsubscribe from store --- packages/kit/src/runtime/server/page/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/kit/src/runtime/server/page/index.js b/packages/kit/src/runtime/server/page/index.js index cebdb9d6ea8d..3686b78944ca 100644 --- a/packages/kit/src/runtime/server/page/index.js +++ b/packages/kit/src/runtime/server/page/index.js @@ -383,9 +383,9 @@ async function respond({ request, options, $session, route, status = 200, error status: 500, error: e instanceof Error ? e : { name: 'Error', message: e.toString() } }); + } finally { + unsubscribe(); } - - unsubscribe(); } else { rendered = { head: '', From bbd004f6093dd6603ef0131209d383841221fb62 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 3 Apr 2021 08:33:03 -0400 Subject: [PATCH 4/5] remove ancient deprecation warning --- packages/kit/src/runtime/server/page/index.js | 6 ------ 1 file changed, 6 deletions(-) diff --git a/packages/kit/src/runtime/server/page/index.js b/packages/kit/src/runtime/server/page/index.js index 3686b78944ca..d5dfb4952c06 100644 --- a/packages/kit/src/runtime/server/page/index.js +++ b/packages/kit/src/runtime/server/page/index.js @@ -267,12 +267,6 @@ async function respond({ request, options, $session, route, status = 200, error const mod = await component_promises[i]; components[i] = mod.default; - if (mod.preload) { - throw new Error( - 'preload has been deprecated in favour of load. Please consult the documentation: https://kit.svelte.dev/docs#loading' - ); - } - if (mod.load) { loaded = await mod.load.call(null, { page, From 8c57702560f136dbf9b687f0c5470165994536e2 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 3 Apr 2021 10:43:53 -0400 Subject: [PATCH 5/5] set more sensible timeout, remove preload test --- .../apps/basics/src/routes/preload/__tests__.js | 15 --------------- .../apps/basics/src/routes/preload/index.svelte | 1 - .../basics/src/routes/preload/uses-preload.svelte | 5 ----- packages/kit/test/test.js | 3 +++ 4 files changed, 3 insertions(+), 21 deletions(-) delete mode 100644 packages/kit/test/apps/basics/src/routes/preload/__tests__.js delete mode 100644 packages/kit/test/apps/basics/src/routes/preload/index.svelte delete mode 100644 packages/kit/test/apps/basics/src/routes/preload/uses-preload.svelte diff --git a/packages/kit/test/apps/basics/src/routes/preload/__tests__.js b/packages/kit/test/apps/basics/src/routes/preload/__tests__.js deleted file mode 100644 index 21a4b58baafc..000000000000 --- a/packages/kit/test/apps/basics/src/routes/preload/__tests__.js +++ /dev/null @@ -1,15 +0,0 @@ -import * as assert from 'uvu/assert'; - -/** @type {import('../../../../../types').TestMaker} */ -export default function test(test) { - test('errors on preload', '/preload', async ({ page, clicknav }) => { - await clicknav('[href="/preload/uses-preload"]'); - - assert.equal(await page.textContent('h1'), '500'); - assert.equal(await page.textContent('footer'), 'Custom layout'); - assert.equal( - await page.textContent('#message'), - 'This is your custom error page saying: "preload has been deprecated in favour of load. Please consult the documentation: https://kit.svelte.dev/docs#loading"' - ); - }); -} diff --git a/packages/kit/test/apps/basics/src/routes/preload/index.svelte b/packages/kit/test/apps/basics/src/routes/preload/index.svelte deleted file mode 100644 index aa423110b277..000000000000 --- a/packages/kit/test/apps/basics/src/routes/preload/index.svelte +++ /dev/null @@ -1 +0,0 @@ -uses preload \ No newline at end of file diff --git a/packages/kit/test/apps/basics/src/routes/preload/uses-preload.svelte b/packages/kit/test/apps/basics/src/routes/preload/uses-preload.svelte deleted file mode 100644 index 12a231fda390..000000000000 --- a/packages/kit/test/apps/basics/src/routes/preload/uses-preload.svelte +++ /dev/null @@ -1,5 +0,0 @@ - - -

this should not be visible

\ No newline at end of file diff --git a/packages/kit/test/test.js b/packages/kit/test/test.js index 36e1d73838ce..139f885234ea 100644 --- a/packages/kit/test/test.js +++ b/packages/kit/test/test.js @@ -19,6 +19,9 @@ async function setup({ port }) { nojs: await browser.newContext({ javaScriptEnabled: false }) }; + contexts.js.setDefaultTimeout(5000); + contexts.nojs.setDefaultTimeout(5000); + const cookie = { name: 'name', value: 'SvelteKit',