Ember Octane generate component -gc errors 3.17.1

Hi there,

I’m trying to generate new octane components js and hbs.

I do this: ember g component foo -gc

It works in terms of adding them both to app/components/foo.js

However, if I then ember serve, I get this:

(node:10255) UnhandledPromiseRejectionWarning: Error: EEXIST: file already exists, symlink ‘/home/username/workspace/polonious-dash/app/components/foo.js’ -> ‘/tmp/broccoli-10255PQnTimmXLkvP/out-544-broccoli_persistent_filter_template_compiler/polonious-dash/components/foo.js’ at Object.symlinkSync (fs.js:1011:3) at symlink (/home/username/workspace/polonious-dash/node_modules/symlink-or-copy/index.js:98:14) at symlinkOrCopySync (/home/username/workspace/polonious-dash/node_modules/symlink-or-copy/index.js:65:5) at /home/username/workspace/polonious-dash/node_modules/ember-cli-htmlbars/node_modules/broccoli-persistent-filter/index.js:322:16 at initializePromise (/home/username/workspace/polonious-dash/node_modules/ember-cli-htmlbars/node_modules/rsvp/dist/rsvp.js:523:7) at new Promise (/home/username/workspace/polonious-dash/node_modules/ember-cli-htmlbars/node_modules/rsvp/dist/rsvp.js:1017:35) at TemplateCompiler.Filter._handleFile (/home/username/workspace/polonious-dash/node_modules/ember-cli-htmlbars/node_modules/broccoli-persistent-filter/index.js:306:10)

… etc

I can get rid of this error by mv app/components/foo.hbs app/template/components/.

ember s then works ok.

Is there some switch I’m missing in package.json or one of the other ember config files that controls this behaviour, it feels like I’m half way there but broccoli is not happy…

ember -v ember-cli: 3.16.0 node: 12.16.1 (I’ve also tried 13.*) os: linux x64

hopefully relevant package.json bits:

“devDependencies”: { “@ember/optional-features”: “^1.3.0”, “ember-source”: “3.17.1”, },

“ember”: { “edition”: “octane” }

The main requirements for colocation are:

  • ember-cli >= 3.12.0
  • ember-source >= 3.13.0
  • ember-cli-htmlbars >= 4.2.0

The specific error you are seeing seems like one of these packages is not quite up to the requirements here.