#1131·plasmo

[BUG] Plasmo build stops working after a few runs (on any project/starter templates/etc...)

Author: reedjonesCreated Nov 11, 2024Updated Mar 14, 2026
Labelsbug

What happened?

Basically I can clone one of the starter repositories, and build a few times - after a few I consistently get this error. I've tried changing node versions, changing package managers, parcel versions, etc... not sure what the issue is? Or even if it is an issue with parcel, plasmo, pnpm, my setup, etc???
It's been driving me crazy... Any help much appreciated!

bash
pnpm create plasmo --with-env
pnpm dev

 Plasmo v0.89.4
 The Browser Extension Framework
 INFO   | Starting the extension development server...
 INFO   | Building for target: chrome-mv3
 INFO   | Loaded environment variables from: [ '.env' ]
 Building..node:internal/event_target:1094
  process.nextTick(() => { throw err; });
Error: Cannot find module '@parcel/diagnostic'

Full stack trace:

 Building... 0      | @plasmohq/parcel-optimizer-encapsulate static\background\index.js static\background\index.js
 1      | @plasmohq/parcel-optimizer-encapsulate multiple.[hash].js multiple.[hash].js
 2      | @plasmohq/parcel-optimizer-encapsulate overlay.[hash].js overlay.[hash].js
 0      | @plasmohq/optimizer-es: static\background\index.js static\background\index.js [PROJECT_PATH]
 1      | @plasmohq/optimizer-es: multiple.[hash].js multiple.[hash].js [PROJECT_PATH]
 2      | @plasmohq/optimizer-es: overlay.[hash].js overlay.[hash].js [PROJECT_PATH]
 3      | optimizer-es: skipped
 4      | optimizer-es: skipped
 5      | optimizer-es: skipped
 Building   node:internal/event_target:1094
  process.nextTick(() => { throw err; });
                           ^

Error: Cannot find module '@parcel/diagnostic'
Require stack:
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\\\utils\lib\index.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Config.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\\\utils.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Environment.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Asset.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\Parcel.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\index.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\fs\lib\index.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)
    at Module._load (node:internal/modules/cjs/loader:1051:27)
    at Module.require (node:internal/modules/cjs/loader:1311:19)
    at require (node:internal/modules/helpers:179:18)
    at _diagnostic ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js:24:16)
    at Logger.error ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js:60:26)
    at WorkerFarm.onError ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\WorkerFarm.js:205:25)
    at Worker.<anonymous> ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\WorkerFarm.js:220:36)
    at Worker.emit (node:events:519:28)
    at worker.WorkerBackend.exitCode ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\Worker.js:79:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\logger\\lib\\Logger.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\\\utils\\lib\\index.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Config.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\\\utils.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Environment.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Asset.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\Parcel.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\index.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]_@[email protected]\\node_modules\\@parcel\\fs\\lib\\index.js'
  ]
}
Software Version
Plasmo v0.89.4
Node v20.18.0
pnpm 9.12.2
parcel 2.9.3

possibly related: https://github.com/parcel-bundler/parcel/issues/7590 https://github.com/parcel-bundler/parcel/issues/5744

Version

Latest

What OS are you seeing the problem on?

Windows

What browsers are you seeing the problem on?

No response

Relevant log output

bash
Error: Cannot find module '@parcel/diagnostic'
Require stack:
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\\\utils\lib\index.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Config.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\\\utils.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Environment.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\public\Asset.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\Parcel.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\core\lib\index.js
- [PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\fs\lib\index.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)
    at Module._load (node:internal/modules/cjs/loader:1051:27)
    at Module.require (node:internal/modules/cjs/loader:1311:19)
    at require (node:internal/modules/helpers:179:18)
    at _diagnostic ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js:24:16)
    at Logger.error ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]\node_modules\@parcel\logger\lib\Logger.js:60:26)
    at WorkerFarm.onError ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\WorkerFarm.js:205:25)
    at Worker.<anonymous> ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\WorkerFarm.js:220:36)
    at Worker.emit (node:events:519:28)
    at worker.WorkerBackend.exitCode ([PROJECT_PATH]\node_modules\.pnpm\@[email protected]_@[email protected]\node_modules\@parcel\workers\lib\Worker.js:79:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\logger\\lib\\Logger.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\\\utils\\lib\\index.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Config.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\\\utils.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Environment.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\public\\Asset.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\Parcel.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]\\node_modules\\@parcel\\core\\lib\\index.js',
    '[PROJECT_PATH]\\node_modules\\.pnpm\\@[email protected]_@[email protected]\\node_modules\\@parcel\\fs\\lib\\index.js'
  ]
}

(OPTIONAL) Contribution

  • I would like to fix this BUG via a PR

Code of Conduct

  • I agree to follow this project's Code of Conduct
  • I checked the current issues for duplicate problems.