Ember-cli project update instructions

Please correct me if I’m missing something here, but ember-cli release project update instructions say:

  1. rm -rf node_modules bower_components dist tmp – Delete temporary development folders.
  2. npm install --save-dev ember-cli@1.13.8 – Update project’s package.json to use latest version.
  3. npm install – Reinstall NPM dependencies.
  4. bower install – Reinstall bower dependencies.
  5. ember init – This runs the new project blueprint on your projects directory. Please follow the prompts, and review all changes (tip: you can see a diff by pressing d). The most common source of upgrade pain is missing changes in this step.

Now, I appreciate that these are simplified but this is not how my update process looks like, and it hasn’t for some time now. Additionally few releases back I remember having problem with ws and socket.io packages not compiling on windows with node_gyp.

I think the new user experience can be improved by changing the instructions for Project Update to the following:

  1. rm -rf node_modules bower_components dist tmp – Delete temporary development folders. (Windows: rmdir /s /q <dir>).
  2. npm install --save-dev ember-cli@1.13.8 – Update project’s package.json to use latest version. (In Windows, add --msvs_version=<version> to specify version of VS tools. [2010/2012/2013/2015]).
  3. ember init – Please follow the prompts, and review all changes (tip: you can see a diff by pressing d). The most common source of upgrade pain is missing changes in this step. If you have other dependencies in your package.json and/or bower.json files, use diff (d key) output to view changes, decline the update, and update dependencies manually outside of the ember init process.

Ember init runs npm install and bower install anyway and the current order suggests that after everything is installed you can just reject package.json and/or bower.json diff and move on. Surely at some poin, outdated ember-cli dependencies will start causing issues.

The --msvs_version parameter could be also added to step 4 of the setup instructions.

Problems with socket.io compilation in windows can be resolved by installing ws globally prior to installing ember-cli. This too, took me days to work out.

Again, just a suggestion and please do correct me if I’m missing something.

Seems socket.io must having vs 2013, don’t known why but it’s my experience.