vee
vee

Reputation: 4755

How to update ember packages?

I have my old project that use Ember 2.8.

Now, I want to update all the packages and here is the updated package.json

{
  "name": "php-api-ember-test",
  "version": "0.0.0",
  "description": "Small description for php-api-ember-test goes here",
  "directories": {
    "doc": "doc",
    "test": "tests"
  },
  "scripts": {
    "build": "ember build",
    "start": "ember server",
    "test": "ember test"
  },
  "repository": "",
  "author": "",
  "license": "MIT",
  "devDependencies": {
    "broccoli-asset-rev": "^2.4.5",
    "ember-ajax": "^3.0.0",
    "ember-cli": "~2.14.2",
    "ember-cli-app-version": "^3.0.0",
    "ember-cli-babel": "^6.3.0",
    "ember-cli-bootstrap-4": "^0.3.2",
    "ember-cli-dependency-checker": "^1.3.0",
    "ember-cli-eslint": "^3.0.0",
    "ember-cli-htmlbars": "^2.0.1",
    "ember-cli-htmlbars-inline-precompile": "^0.4.3",
    "ember-cli-inject-live-reload": "^1.4.1",
    "ember-cli-jshint": "^1.0.0",
    "ember-cli-qunit": "^4.1.0",
    "ember-cli-release": "^0.2.9",
    "ember-cli-sass": "5.5.1",
    "ember-cli-sri": "^2.1.0",
    "ember-cli-test-loader": "^1.1.0",
    "ember-cli-uglify": "^1.2.0",
    "ember-data": "~2.14.9",
    "ember-export-application-global": "^2.0.0",
    "ember-load-initializers": "^1.0.0",
    "ember-resolver": "^4.0.0",
    "ember-welcome-page": "^3.0.0",
    "loader.js": "^4.2.3"
  },
  "engines": {
    "node": "^4.5 || 6.* || >= 7.*"
  },
  "private": true
}

And this is bower.json

{
  "name": "php-api-ember-test",
  "dependencies": {
    "ember": "~2.14.0",
    "ember-cli-shims": "0.1.1"
  }
}

I was deleted the bower_components and node_modules folders and then run the command npm install && bower install. After those install completed I run ember init and get this result.

Missing npm packages:
Package: ember-ajax
  * Specified: ^3.0.0
  * Installed: 2.5.6

Package: ember-cli-app-version
  * Specified: ^3.0.0
  * Installed: 1.0.1

Package: ember-cli-babel
  * Specified: ^6.3.0
  * Installed: 5.2.4

Package: ember-cli-htmlbars
  * Specified: ^2.0.1
  * Installed: 1.3.4

Package: ember-cli-htmlbars-inline-precompile
  * Specified: ^0.4.3
  * Installed: 0.3.13

Package: ember-cli-qunit
  * Specified: ^4.1.0
  * Installed: 2.2.6

Package: ember-export-application-global
  * Specified: ^2.0.0
  * Installed: 1.1.1

Package: ember-load-initializers
  * Specified: ^1.0.0
  * Installed: 0.5.1

Package: ember-resolver
  * Specified: ^4.0.0
  * Installed: 2.1.1

Package: ember-welcome-page
  * Specified: ^3.0.0
  * Installed: 1.0.4

Run `npm install` to install missing dependencies.

An error occured in the constructor for ember-cli-dependency-checker

But I'm already run the npm install commands for many times.

How to update Ember packages?

Upvotes: 2

Views: 3677

Answers (3)

Ricardo D. Quiroga
Ricardo D. Quiroga

Reputation: 170

Use yarn to selective package update

yarn upgrade-interactive --latest

Upvotes: 1

ykaragol
ykaragol

Reputation: 6221

The official upgrade docs are here: ember-cli upgrade. Details are in release notes.

First of all, there are some distinct steps:

  1. Setting up the global ember-cli
  2. Upgrading the project ember version
  3. Upgrading the all other addons

You should better to do them step-by-step.

By the way, look all the release notes of the releases you've passed through. Because there may some differences. For example, for older versions (2.14, 2.13..) there were bower cache clean and bower install steps. For new versions (2.15), those steps are not necessary.

Upvotes: 3

Daniel
Daniel

Reputation: 18682

Don't use npm. Use yarn. It's faster, more secure and has better cache. It's also recommended as migration path from Bower (by Bower). Yarn is also recommended by Ember team instead of npm.

rm -rf node_modules
yarn

Upvotes: 1

Related Questions