From 328db0920f1d543702f907d7b89d71a25e8b2039 Mon Sep 17 00:00:00 2001 From: Conduitry Date: Mon, 11 Mar 2019 14:13:03 -0400 Subject: [PATCH 1/2] repl: better bundling error when unable to resolve module (#2208) --- site/static/workers/bundler.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/site/static/workers/bundler.js b/site/static/workers/bundler.js index 2874820529..678612c350 100644 --- a/site/static/workers/bundler.js +++ b/site/static/workers/bundler.js @@ -89,6 +89,8 @@ async function getBundle(mode, cache, lookup) { if (importee.endsWith('.html')) importee = importee.replace(/\.html$/, '.svelte'); if (importee in lookup) return importee; + + throw new Error(`Could not resolve "${importee}" from "${importer}"`); }, load(id) { if (id.startsWith(`https://`)) return fetch_if_uncached(id); From 78cb0183fb044e7820821d69a1b9fa70dd8f9921 Mon Sep 17 00:00:00 2001 From: Conduitry Date: Mon, 11 Mar 2019 14:39:08 -0400 Subject: [PATCH 2/2] repl: use Rollup 1.x --- site/static/workers/bundler.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/site/static/workers/bundler.js b/site/static/workers/bundler.js index 678612c350..c724cc7da0 100644 --- a/site/static/workers/bundler.js +++ b/site/static/workers/bundler.js @@ -14,7 +14,7 @@ self.addEventListener('message', async event => { version === 'local' ? '/repl/local?file=compiler.js' : `https://unpkg.com/svelte@${version}/compiler.js`, - `https://unpkg.com/rollup@0.68/dist/rollup.browser.js` + `https://unpkg.com/rollup@1/dist/rollup.browser.js` ); fulfil(); @@ -62,7 +62,6 @@ function fetch_if_uncached(url) { async function getBundle(mode, cache, lookup) { let bundle; - let error; const all_warnings = []; const new_cache = {}; @@ -106,7 +105,7 @@ async function getBundle(mode, cache, lookup) { : svelte.compile(code, Object.assign({ generate: mode, format: 'esm', - name: name, + name, filename: name + '.svelte' }, commonCompilerOptions)); @@ -124,6 +123,7 @@ async function getBundle(mode, cache, lookup) { return result.js; } }], + inlineDynamicImports: true, onwarn(warning) { all_warnings.push({ message: warning.message @@ -131,7 +131,7 @@ async function getBundle(mode, cache, lookup) { } }); } catch (error) { - return { error, bundle: null, cache: new_cache, warnings: all_warnings } + return { error, bundle: null, cache: new_cache, warnings: all_warnings }; } return { bundle, cache: new_cache, error: null, warnings: all_warnings }; @@ -168,7 +168,7 @@ async function bundle(components) { let uid = 1; - const dom_result = await dom.bundle.generate({ + const dom_result = (await dom.bundle.generate({ format: 'iife', name: 'SvelteComponent', globals: id => { @@ -177,7 +177,7 @@ async function bundle(components) { return name; }, sourcemap: true - }); + })).output[0]; if (token !== currentToken) return; @@ -195,16 +195,16 @@ async function bundle(components) { if (token !== currentToken) return; const ssr_result = ssr - ? await ssr.bundle.generate({ + ? (await ssr.bundle.generate({ format: 'iife', name: 'SvelteComponent', globals: id => import_map.get(id), sourcemap: true - }) + })).output[0] : null; return { - imports: dom.bundle.imports, + imports: dom_result.imports, import_map, dom: dom_result, ssr: ssr_result,