@sveltejs/kit 2.46.5 → 2.47.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -56,7 +56,7 @@ async function analyse({
|
|
|
56
56
|
// essential we do this before analysing the code
|
|
57
57
|
internal.set_building();
|
|
58
58
|
|
|
59
|
-
// set env, in case
|
|
59
|
+
// set env, `read`, and `manifest`, in case they're used in initialisation
|
|
60
60
|
const { publicPrefix: public_prefix, privatePrefix: private_prefix } = config.env;
|
|
61
61
|
const private_env = filter_env(env, private_prefix, public_prefix);
|
|
62
62
|
const public_env = filter_env(env, public_prefix, private_prefix);
|
|
@@ -485,14 +485,16 @@ async function prerender({ hash, out, manifest_path, metadata, verbose, env }) {
|
|
|
485
485
|
}
|
|
486
486
|
}
|
|
487
487
|
|
|
488
|
-
// the user's remote function modules may reference environment variables
|
|
489
|
-
// the top-level so we need to set
|
|
490
|
-
// to avoid potential runtime errors
|
|
488
|
+
// the user's remote function modules may reference environment variables,
|
|
489
|
+
// `read` or the `manifest` at the top-level so we need to set them before
|
|
490
|
+
// evaluating those modules to avoid potential runtime errors
|
|
491
491
|
const { publicPrefix: public_prefix, privatePrefix: private_prefix } = config.env;
|
|
492
492
|
const private_env = filter_env(env, private_prefix, public_prefix);
|
|
493
493
|
const public_env = filter_env(env, public_prefix, private_prefix);
|
|
494
494
|
internal.set_private_env(private_env);
|
|
495
495
|
internal.set_public_env(public_env);
|
|
496
|
+
internal.set_manifest(manifest);
|
|
497
|
+
internal.set_read_implementation((file) => createReadableStream(`${out}/server/${file}`));
|
|
496
498
|
|
|
497
499
|
/** @type {Array<import('types').RemoteInfo & { type: 'prerender'}>} */
|
|
498
500
|
const prerender_functions = [];
|
|
@@ -120,11 +120,25 @@ export async function getRequest({ request, base, bodySizeLimit }) {
|
|
|
120
120
|
delete headers[':scheme'];
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
+
// TODO: Whenever Node >=22 is minimum supported version, we can use `request.readableAborted`
|
|
124
|
+
// @see https://github.com/nodejs/node/blob/5cf3c3e24c7257a0c6192ed8ef71efec8ddac22b/lib/internal/streams/readable.js#L1443-L1453
|
|
125
|
+
const controller = new AbortController();
|
|
126
|
+
let errored = false;
|
|
127
|
+
let end_emitted = false;
|
|
128
|
+
request.once('error', () => (errored = true));
|
|
129
|
+
request.once('end', () => (end_emitted = true));
|
|
130
|
+
request.once('close', () => {
|
|
131
|
+
if ((errored || request.destroyed) && !end_emitted) {
|
|
132
|
+
controller.abort();
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
|
|
123
136
|
return new Request(base + request.url, {
|
|
124
137
|
// @ts-expect-error
|
|
125
138
|
duplex: 'half',
|
|
126
139
|
method: request.method,
|
|
127
140
|
headers: Object.entries(headers),
|
|
141
|
+
signal: controller.signal,
|
|
128
142
|
body:
|
|
129
143
|
request.method === 'GET' || request.method === 'HEAD'
|
|
130
144
|
? undefined
|
|
@@ -41,7 +41,6 @@ import {
|
|
|
41
41
|
import { import_peer } from '../../utils/import.js';
|
|
42
42
|
import { compact } from '../../utils/array.js';
|
|
43
43
|
import { should_ignore } from './static_analysis/utils.js';
|
|
44
|
-
import { rollupVersion } from 'vite';
|
|
45
44
|
|
|
46
45
|
const cwd = process.cwd();
|
|
47
46
|
|
|
@@ -636,102 +635,30 @@ async function kit({ svelte_config }) {
|
|
|
636
635
|
/** @type {Array<{ hash: string, file: string }>} */
|
|
637
636
|
const remotes = [];
|
|
638
637
|
|
|
639
|
-
/**
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
*/
|
|
645
|
-
const imported_by_remotes = new Set();
|
|
646
|
-
let uid = 1;
|
|
638
|
+
/** @type {Map<string, string>} Maps remote hash -> original module id */
|
|
639
|
+
const remote_original_by_hash = new Map();
|
|
640
|
+
|
|
641
|
+
/** @type {Set<string>} Track which remote hashes have already been emitted */
|
|
642
|
+
const emitted_remote_hashes = new Set();
|
|
647
643
|
|
|
648
644
|
/** @type {import('vite').Plugin} */
|
|
649
645
|
const plugin_remote = {
|
|
650
646
|
name: 'vite-plugin-sveltekit-remote',
|
|
651
647
|
|
|
652
|
-
|
|
653
|
-
if (
|
|
654
|
-
for (const id of info.importedIds) {
|
|
655
|
-
imported_by_remotes.add(id);
|
|
656
|
-
}
|
|
657
|
-
}
|
|
648
|
+
resolveId(id) {
|
|
649
|
+
if (id.startsWith('\0sveltekit-remote:')) return id;
|
|
658
650
|
},
|
|
659
651
|
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
if (Array.isArray(config.build.rollupOptions.output)) {
|
|
672
|
-
// TODO I have no idea how this could occur
|
|
673
|
-
throw new Error('rollupOptions.output cannot be an array');
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
// Set up manualChunks to isolate *.remote.ts files
|
|
677
|
-
const { manualChunks } = config.build.rollupOptions.output;
|
|
678
|
-
|
|
679
|
-
const [major, minor] = rollupVersion.split('.').map(Number);
|
|
680
|
-
const is_outdated_rollup = major === 4 && minor < 52;
|
|
681
|
-
if (is_outdated_rollup) {
|
|
682
|
-
console.warn(
|
|
683
|
-
'Rollup >=4.52.0 is recommended when using SvelteKit remote functions as it fixes some bugs related to code-splitting. Current version: ' +
|
|
684
|
-
rollupVersion
|
|
685
|
-
);
|
|
686
|
-
}
|
|
687
|
-
|
|
688
|
-
config.build.rollupOptions.output = {
|
|
689
|
-
...config.build.rollupOptions.output,
|
|
690
|
-
manualChunks(id, meta) {
|
|
691
|
-
// Check if this is a *.remote.ts file
|
|
692
|
-
if (svelte_config.kit.moduleExtensions.some((ext) => id.endsWith(`.remote${ext}`))) {
|
|
693
|
-
const relative = posixify(path.relative(cwd, id));
|
|
694
|
-
|
|
695
|
-
return `remote-${hash(relative)}`;
|
|
696
|
-
}
|
|
697
|
-
|
|
698
|
-
// With onlyExplicitManualChunks Rollup will keep any manual chunk's dependencies out of that chunk.
|
|
699
|
-
// This option only exists on more recent Rollup versions; use this as a fallback for older versions.
|
|
700
|
-
if (is_outdated_rollup) {
|
|
701
|
-
// Prevent core runtime and env from ending up in a remote chunk, which could break because of initialization order
|
|
702
|
-
if (id === `${runtime_directory}/app/server/index.js`) {
|
|
703
|
-
return 'app-server';
|
|
704
|
-
}
|
|
705
|
-
if (id === `${runtime_directory}/shared-server.js`) {
|
|
706
|
-
return 'app-shared-server';
|
|
707
|
-
}
|
|
708
|
-
if (imported_by_remotes.has(id)) {
|
|
709
|
-
return `chunk-${uid++}`;
|
|
710
|
-
}
|
|
711
|
-
}
|
|
712
|
-
|
|
713
|
-
// If there was an existing manualChunks function, call it
|
|
714
|
-
if (typeof manualChunks === 'function') {
|
|
715
|
-
return manualChunks(id, meta);
|
|
716
|
-
}
|
|
717
|
-
|
|
718
|
-
// If manualChunks is an object, check if this module matches any patterns
|
|
719
|
-
if (manualChunks) {
|
|
720
|
-
for (const name in manualChunks) {
|
|
721
|
-
const patterns = manualChunks[name];
|
|
722
|
-
|
|
723
|
-
// TODO is `id.includes(pattern)` correct?
|
|
724
|
-
if (patterns.some((pattern) => id.includes(pattern))) {
|
|
725
|
-
return name;
|
|
726
|
-
}
|
|
727
|
-
}
|
|
728
|
-
}
|
|
729
|
-
}
|
|
730
|
-
};
|
|
731
|
-
|
|
732
|
-
if (!is_outdated_rollup) {
|
|
733
|
-
// @ts-expect-error only exists in more recent Rollup versions https://rollupjs.org/configuration-options/#output-onlyexplicitmanualchunks
|
|
734
|
-
config.build.rollupOptions.output.onlyExplicitManualChunks = true;
|
|
652
|
+
load(id) {
|
|
653
|
+
// On-the-fly generated entry point for remote file just forwards the original module
|
|
654
|
+
// We're not using manualChunks because it can cause problems with circular dependencies
|
|
655
|
+
// (e.g. https://github.com/sveltejs/kit/issues/14679) and module ordering in general
|
|
656
|
+
// (e.g. https://github.com/sveltejs/kit/issues/14590).
|
|
657
|
+
if (id.startsWith('\0sveltekit-remote:')) {
|
|
658
|
+
const hash_id = id.slice('\0sveltekit-remote:'.length);
|
|
659
|
+
const original = remote_original_by_hash.get(hash_id);
|
|
660
|
+
if (!original) throw new Error(`Expected to find metadata for remote file ${id}`);
|
|
661
|
+
return `import * as m from ${s(original)};\nexport default m;`;
|
|
735
662
|
}
|
|
736
663
|
},
|
|
737
664
|
|
|
@@ -746,7 +673,6 @@ async function kit({ svelte_config }) {
|
|
|
746
673
|
}
|
|
747
674
|
|
|
748
675
|
const file = posixify(path.relative(cwd, id));
|
|
749
|
-
|
|
750
676
|
const remote = {
|
|
751
677
|
hash: hash(file),
|
|
752
678
|
file
|
|
@@ -755,7 +681,10 @@ async function kit({ svelte_config }) {
|
|
|
755
681
|
remotes.push(remote);
|
|
756
682
|
|
|
757
683
|
if (opts?.ssr) {
|
|
758
|
-
|
|
684
|
+
// Extra newlines to prevent syntax errors around missing semicolons or comments
|
|
685
|
+
code +=
|
|
686
|
+
'\n\n' +
|
|
687
|
+
dedent`
|
|
759
688
|
import * as $$_self_$$ from './${path.basename(id)}';
|
|
760
689
|
import { init_remote_functions as $$_init_$$ } from '@sveltejs/kit/internal';
|
|
761
690
|
|
|
@@ -767,10 +696,17 @@ async function kit({ svelte_config }) {
|
|
|
767
696
|
}
|
|
768
697
|
`;
|
|
769
698
|
|
|
699
|
+
// Emit a dedicated entry chunk for this remote in SSR builds (prod only)
|
|
770
700
|
if (!dev_server) {
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
701
|
+
remote_original_by_hash.set(remote.hash, id);
|
|
702
|
+
if (!emitted_remote_hashes.has(remote.hash)) {
|
|
703
|
+
this.emitFile({
|
|
704
|
+
type: 'chunk',
|
|
705
|
+
id: `\0sveltekit-remote:${remote.hash}`,
|
|
706
|
+
name: `remote-${remote.hash}`
|
|
707
|
+
});
|
|
708
|
+
emitted_remote_hashes.add(remote.hash);
|
|
709
|
+
}
|
|
774
710
|
}
|
|
775
711
|
|
|
776
712
|
return code;
|
|
@@ -823,19 +759,6 @@ async function kit({ svelte_config }) {
|
|
|
823
759
|
return {
|
|
824
760
|
code: result
|
|
825
761
|
};
|
|
826
|
-
},
|
|
827
|
-
|
|
828
|
-
writeBundle() {
|
|
829
|
-
for (const remote of remotes) {
|
|
830
|
-
const file = `${out}/server/chunks/remote-${remote.hash}.js`;
|
|
831
|
-
const code = fs.readFileSync(file, 'utf-8');
|
|
832
|
-
|
|
833
|
-
fs.writeFileSync(
|
|
834
|
-
file,
|
|
835
|
-
// build process might have minified/adjusted the $$_self_$$ variable, but not the fake global $$_export_$$ function
|
|
836
|
-
code.replace(/\$\$_export_\$\$\((.+?)\)/, (_, name) => `export default ${name};`)
|
|
837
|
-
);
|
|
838
|
-
}
|
|
839
762
|
}
|
|
840
763
|
};
|
|
841
764
|
|
package/src/version.js
CHANGED
package/types/index.d.ts.map
CHANGED
|
@@ -211,6 +211,6 @@
|
|
|
211
211
|
null,
|
|
212
212
|
null
|
|
213
213
|
],
|
|
214
|
-
"mappings": "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
|
|
214
|
+
"mappings": "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",
|
|
215
215
|
"ignoreList": []
|
|
216
216
|
}
|