Skip to content

static-adapter and vite build --watch crashes if triggered while building. #10809

@RonniSkansing

Description

@RonniSkansing

Describe the bug

vite build --watch crashes the processes due a unhanded error if I save while a build is running when using static-adapter.

Reproduction

https://github.com/RonniSkansing/svelte-vite-builld-watch-bug

To reproduce, clone the repo, run npm run build-watch and save twice in template file or js file.

The expected behavior is rebuild twice, the result is a crash.

Logs

➜  my-app  npm run build-watch

> [email protected] build-watch
> vite build --watch


vite v4.4.9 building SSR bundle for production...

watching for file changes...

build started...
✓ 72 modules transformed.

vite v4.4.9 building for production...
✓ 61 modules transformed.
.svelte-kit/output/client/_app/version.json                              0.03 kB │ gzip: 0.05 kB
.svelte-kit/output/client/vite-manifest.json                             2.12 kB │ gzip: 0.40 kB
.svelte-kit/output/client/_app/immutable/nodes/0.18524db0.js             0.60 kB │ gzip: 0.38 kB
.svelte-kit/output/client/_app/immutable/nodes/2.e362da2a.js             0.69 kB │ gzip: 0.44 kB
.svelte-kit/output/client/_app/immutable/nodes/1.4c0ce09b.js             1.03 kB │ gzip: 0.59 kB
.svelte-kit/output/client/_app/immutable/chunks/scheduler.e108d1fd.js    2.16 kB │ gzip: 1.02 kB
.svelte-kit/output/client/_app/immutable/chunks/singletons.94c50d8c.js   2.85 kB │ gzip: 1.46 kB
.svelte-kit/output/client/_app/immutable/chunks/index.a21d6cee.js        5.44 kB │ gzip: 2.31 kB
.svelte-kit/output/client/_app/immutable/entry/app.73759bd2.js           5.82 kB │ gzip: 2.30 kB
.svelte-kit/output/client/_app/immutable/entry/start.bd04ac13.js        24.90 kB │ gzip: 9.81 kB
✓ built in 556ms
.svelte-kit/output/server/vite-manifest.json                   1.29 kB
.svelte-kit/output/server/internal.js                          0.19 kB
.svelte-kit/output/server/entries/fallbacks/layout.svelte.js   0.24 kB
.svelte-kit/output/server/entries/pages/_page.svelte.js        0.37 kB
.svelte-kit/output/server/entries/fallbacks/error.svelte.js    0.89 kB
.svelte-kit/output/server/chunks/ssr.js                        3.35 kB
.svelte-kit/output/server/chunks/internal.js                   5.46 kB
.svelte-kit/output/server/index.js                            90.08 kB
built in 1510ms.

Run npm run preview to preview your production build locally.

> Using @sveltejs/adapter-static
  Wrote site to "build"done

build started...
✓ 0 modules transformed.

vite v4.4.9 building for production...
✓ 61 modules transformed.
.svelte-kit/output/client/_app/version.json                              0.03 kB │ gzip: 0.05 kB
.svelte-kit/output/client/vite-manifest.json                             2.12 kB │ gzip: 0.40 kB
.svelte-kit/output/client/_app/immutable/nodes/0.18524db0.js             0.60 kB │ gzip: 0.38 kB
.svelte-kit/output/client/_app/immutable/nodes/2.e362da2a.js             0.69 kB │ gzip: 0.44 kB
.svelte-kit/output/client/_app/immutable/nodes/1.4c0ce09b.js             1.03 kB │ gzip: 0.59 kB
.svelte-kit/output/client/_app/immutable/chunks/scheduler.e108d1fd.js    2.16 kB │ gzip: 1.02 kB
.svelte-kit/output/client/_app/immutable/chunks/singletons.94c50d8c.js   2.85 kB │ gzip: 1.46 kB
.svelte-kit/output/client/_app/immutable/chunks/index.a21d6cee.js        5.44 kB │ gzip: 2.31 kB
.svelte-kit/output/client/_app/immutable/entry/app.73759bd2.js           5.82 kB │ gzip: 2.30 kB
.svelte-kit/output/client/_app/immutable/entry/start.bd04ac13.js        24.90 kB │ gzip: 9.81 kB
✓ built in 526ms
.svelte-kit/output/server/vite-manifest.json                   1.29 kB
.svelte-kit/output/server/internal.js                          0.19 kB
.svelte-kit/output/server/entries/fallbacks/layout.svelte.js   0.24 kB
.svelte-kit/output/server/entries/pages/_page.svelte.js        0.37 kB
.svelte-kit/output/server/entries/fallbacks/error.svelte.js    0.89 kB
.svelte-kit/output/server/chunks/ssr.js                        3.35 kB
.svelte-kit/output/server/chunks/internal.js                   5.46 kB
.svelte-kit/output/server/index.js                            90.08 kB
built in 1050ms.

Run npm run preview to preview your production build locally.

> Using @sveltejs/adapter-static

build started...
✓ 0 modules transformed.
rendering chunks (6)...
node:internal/event_target:1016
  process.nextTick(() => { throw err; });
                           ^
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/my-app/.svelte-kit/output/server/internal.js' imported from /my-app/node_modules/@sveltejs/kit/src/core/postbuild/fallback.js
    at new NodeError (node:internal/errors:405:5)
    at finalizeResolution (node:internal/modules/esm/resolve:324:11)
    at moduleResolve (node:internal/modules/esm/resolve:943:10)
    at defaultResolve (node:internal/modules/esm/resolve:1129:11)
    at nextResolve (node:internal/modules/esm/loader:163:28)
    at ESMLoader.resolve (node:internal/modules/esm/loader:835:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
    at ESMLoader.import (node:internal/modules/esm/loader:524:22)
    at importModuleDynamically (node:internal/modules/esm/translators:110:35)
    at importModuleDynamicallyCallback (node:internal/process/esm_loader:35:14)
Emitted 'error' event on Worker instance at:
    at [kOnErrorMessage] (node:internal/worker:300:10)
    at [kOnMessage] (node:internal/worker:311:37)
    at MessagePort.<anonymous> (node:internal/worker:212:57)
    at [nodejs.internal.kHybridDispatch] (node:internal/event_target:741:20)
    at exports.emitMessage (node:internal/per_context/messageport:23:28) {
  code: 'ERR_MODULE_NOT_FOUND'
}

System Info

System:
    OS: Linux 6.2 Ubuntu 23.04 
  Binaries:
    Node: 18.17.0 - ~/.nvm/versions/node/v18.17.0/bin/node
    npm: 9.6.7 - ~/.nvm/versions/node/v18.17.0/bin/npm
  npmPackages:
    @sveltejs/adapter-auto: ^2.0.0 => 2.1.0 
    @sveltejs/adapter-static: ^2.0.3 => 2.0.3 
    @sveltejs/kit: ^1.20.4 => 1.25.1 
    svelte: ^4.0.5 => 4.2.1 
    vite: ^4.4.2 => 4.4.9

Severity

annoyance

Additional Information

I am using vite build --watch so I can develop while another program is serving the static project.
Any work arounds would also be appreciated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions