embroider icon indicating copy to clipboard operation
embroider copied to clipboard

Deleting a file while the ember server is running throws a build error.

Open colenso opened this issue 1 year ago • 3 comments

So far I've noticed this for files in app/helpers/** and app/templates/components/** but not app/components/** files.

colenso avatar Nov 29 '23 13:11 colenso

Error Summary:

  - broccoliBuilderErrorStack: ModuleNotFoundError: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
    at /Users/colenso/Documents/client/node_modules/webpack/lib/Compilation.js:2022:28
    at /Users/colenso/Documents/client/node_modules/webpack/lib/NormalModuleFactory.js:817:13
    at eval (eval at create (/Users/colenso/Documents/client/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:10:1)
    at /Users/colenso/Documents/client/node_modules/webpack/lib/NormalModuleFactory.js:275:22
    at eval (eval at create (/Users/colenso/Documents/client/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:24:1)
    at /Users/colenso/Documents/client/node_modules/@embroider/webpack/src/webpack-resolver-plugin.js:50:29
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
  - code: [undefined]
  - codeFrame: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
  - errorMessage: assets/client.js: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
        at PackagerRunner (@embroider/webpack)
  - errorType: Build Error
  - location:
    - column: [undefined]
    - file: assets/client.js
    - line: [null]
    - treeDir: [undefined]
  - message: assets/client.js: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
        at PackagerRunner (@embroider/webpack)
  - name: Error
  - nodeAnnotation: @embroider/webpack
  - nodeName: PackagerRunner
  - originalErrorMessage: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
  - stack: ModuleNotFoundError: Module not found: Error: Can't resolve './_app_/templates/components/driver-day/allocator.hbs' in '/Users/colenso/Documents/client/node_modules/.embroider/rewritten-packages/ember-cli-json-module.87b08615/node_modules/ember-cli-json-module'
    at /Users/colenso/Documents/client/node_modules/webpack/lib/Compilation.js:2022:28
    at /Users/colenso/Documents/client/node_modules/webpack/lib/NormalModuleFactory.js:817:13
    at eval (eval at create (/Users/colenso/Documents/client/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:10:1)
    at /Users/colenso/Documents/client/node_modules/webpack/lib/NormalModuleFactory.js:275:22
    at eval (eval at create (/Users/colenso/Documents/client/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:24:1)
    at /Users/colenso/Documents/client/node_modules/@embroider/webpack/src/webpack-resolver-plugin.js:50:29
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

colenso avatar Nov 29 '23 13:11 colenso

Hey @colenso 👋 I just tried to recreate this issue in our test suite and I couldn't get it to fail 🤔 are you able to put together a reproduction for us?

mansona avatar Nov 29 '23 16:11 mansona

We've encountered the same issue. We deleted a template/*.hbs file and the build server threw an error. Here's the relevant stack trace

Module build failed (from ../../thread-loader/dist/cjs.js):
Thread Loader (Worker 0)
ENOENT: no such file or directory, open '/redacted/node_modules/.embroider/rewritten-app/templates/settings/password-reset.hbs/password-reset.hbs'
    at PoolWorker.fromErrorObj (/redacted/node_modules/thread-loader/dist/WorkerPool.js:346:12)
    at /redacted/node_modules/thread-loader/dist/WorkerPool.js:219:29
    at mapSeries (/redacted/node_modules/neo-async/async.js:3625:14)
    at PoolWorker.onWorkerMessage (/redacted/node_modules/thread-loader/dist/WorkerPool.js:173:34)
    at /redacted/node_modules/thread-loader/dist/WorkerPool.js:146:14
    at Socket.onChunk (/redacted/node_modules/thread-loader/dist/readBuffer.js:40:9)
    at Socket.emit (node:events:513:28)
    at Socket.Readable.read (node:internal/streams/readable:527:10)
    at Socket.read (node:net:729:39)
    at flow (node:internal/streams/readable:1011:34)
    at emitReadable_ (node:internal/streams/readable:592:3)
    at processTicksAndRejections (node:internal/process/task_queues:82:21)

This is the interesting line

ENOENT: no such file or directory, open '/redacted/node_modules/.embroider/rewritten-app/templates/settings/password-reset.hbs/password-reset.hbs'

It looks like the filename has been appended twice at the end of the path.

We're using

    "@ember/test-helpers": "^2.9.4",
    "@embroider/compat": "^3.4.0",
    "@embroider/core": "^3.4.2",
    "@embroider/webpack": "^3.2.1",

jknight12882 avatar Dec 05 '23 06:12 jknight12882

I've been running into this recently a fair bit — pretty much every time I switch a branch or rebase (usually because there's almost always something deleted / moved).

From my limited testing, it seemed like it only failed if the file that is deleted was imported somewhere. Template files being deleted didn't seem to break anything (which is a bit different from the original issue!)

swastik avatar Oct 09 '24 08:10 swastik