Upgrade from 2018 to Latest (3.15?)

Hi,

Been out of the Ember world a while and project I’ve done not the greatest (learned on the go) Did not touch it for a year, would like to try upgrade to the latest version of Ember before carrying on. (client requested some work)

Been thinking about just replacing the package.json with a copy of a new ember project (3.15.2) and then npm install the various dependencies I have (though worried some might not be around anymore?)

Any thoughts / advise? My "old project"s package.json below

  "name": "project_name",
  "version": "0.0.0",
  "private": true,
  "description": "project_name  UI",
  "license": "MIT",
  "author": "project_company",
  "directories": {
    "doc": "doc",
    "test": "tests"
  },
  "repository": "",
  "scripts": {
    "build": "ember build",
    "lint:js": "eslint ./*.js app config lib server tests",
    "start": "ember serve",
    "test": "ember test"
  },
  "devDependencies": {
    "@html-next/vertical-collection": "^1.0.0-beta.9",
    "broccoli-asset-rev": "^2.4.5",
    "ember-ajax": "^3.0.0",
    "ember-cli": "~2.18.1",
    "ember-cli-app-version": "^3.0.0",
    "ember-cli-babel": "^6.6.0",
    "ember-cli-bootstrap-sassy": "^0.5.8",
    "ember-cli-clipboard": "^0.8.1",
    "ember-cli-dependency-checker": "^2.0.0",
    "ember-cli-eslint": "^4.2.1",
    "ember-cli-file-saver": "^1.1.0",
    "ember-cli-htmlbars": "^2.0.1",
    "ember-cli-htmlbars-inline-precompile": "^1.0.0",
    "ember-cli-inject-live-reload": "^1.4.1",
    "ember-cli-qunit": "^4.1.1",
    "ember-cli-sass": "^7.1.4",
    "ember-cli-shims": "^1.2.0",
    "ember-cli-sri": "^2.1.0",
    "ember-cli-uglify": "^2.0.0",
    "ember-context-menu": "^0.4.0",
    "ember-data": "~2.18.0",
    "ember-export-application-global": "^2.0.0",
    "ember-light-table": "^1.12.2",
    "ember-load-initializers": "^1.0.0",
    "ember-local-storage": "^1.4.1",
    "ember-lodash": "^4.18.0",
    "ember-power-select": "^2.0.0-beta.0",
    "ember-power-select-typeahead": "^0.6.1",
    "ember-resolver": "^4.0.0",
    "ember-responsive": "^2.0.5",
    "ember-source": "~2.18.0",
    "ember-truth-helpers": "^2.0.0",
    "ember-web-api": "^1.0.1",
    "emberx-file-input": "^1.2.1",
    "eslint-plugin-ember": "^5.0.0",
    "file-saver": "^1.3.3",
    "loader.js": "^4.2.3"
  },
  "engines": {
    "node": "^4.5 || 6.* || >= 7.*"
  },
  "dependencies": {
    "bower": "^1.8.8"
  }
}

I did recommend you use ember-cli-update to update from LTS version to LTS version rather than just changing your package.json. Run your app at each LTS to make sure everything works as expected. In addition to bumping dependencies it will clean other files that have changed along they way.

I’d upgrade your addons before jumping versions. I have many of the same addons in my app and most should not be an issue but you’ll only know by checking the readme’s.

IIRC ember-light-table breaks at Ember 3.8 or 3.12. You need to use the the 1x branch and then switch v2-beta branch.

1 Like