diff --git a/.changeset/gentle-rocks-run.md b/.changeset/gentle-rocks-run.md new file mode 100644 index 000000000000..5730b5b8f60d --- /dev/null +++ b/.changeset/gentle-rocks-run.md @@ -0,0 +1,5 @@ +--- +'@sveltejs/package': patch +--- + +[feat] warn if svelte not found in dependencies or peerDependencies diff --git a/packages/package/src/index.js b/packages/package/src/index.js index d751537bf1cf..e7af57df8140 100644 --- a/packages/package/src/index.js +++ b/packages/package/src/index.js @@ -32,6 +32,12 @@ export async function build(config, cwd = process.cwd()) { const pkg = generate_pkg(cwd, files); + if (!pkg.dependencies?.svelte && !pkg.peerDependencies?.svelte) { + console.warn( + 'Svelte libraries should include "svelte" in either "dependencies" or "peerDependencies".' + ); + } + if (!pkg.svelte && files.some((file) => file.is_svelte)) { // Several heuristics in Kit/vite-plugin-svelte to tell Vite to mark Svelte packages // rely on the "svelte" property. Vite/Rollup/Webpack plugin can all deal with it.