diff --git a/core/client/app/app.js b/core/client/app/app.js
index e43a7abdc5..ed5c211677 100755
--- a/core/client/app/app.js
+++ b/core/client/app/app.js
@@ -1,6 +1,6 @@
import Ember from 'ember';
-import Resolver from 'ember-resolver';
-import loadInitializers from 'ember/load-initializers';
+import Resolver from './resolver';
+import loadInitializers from 'ember-load-initializers';
import 'ghost/utils/link-component';
import 'ghost/utils/text-field';
import config from './config/environment';
diff --git a/core/client/app/resolver.js b/core/client/app/resolver.js
new file mode 100644
index 0000000000..2fb563d6c0
--- /dev/null
+++ b/core/client/app/resolver.js
@@ -0,0 +1,3 @@
+import Resolver from 'ember-resolver';
+
+export default Resolver;
diff --git a/core/client/app/router.js b/core/client/app/router.js
index d38590db05..7f4fe4ad2d 100644
--- a/core/client/app/router.js
+++ b/core/client/app/router.js
@@ -8,7 +8,7 @@ const {
on
} = Ember;
-let Router = Ember.Router.extend({
+const Router = Ember.Router.extend({
location: config.locationType, // use HTML5 History API instead of hash-tag based URLs
rootURL: ghostPaths().adminRoot, // admin interface lives under sub-directory /ghost
diff --git a/core/client/bower.json b/core/client/bower.json
index a8ee2d3431..665cc2dd09 100644
--- a/core/client/bower.json
+++ b/core/client/bower.json
@@ -7,7 +7,6 @@
"ember": "2.3.1",
"ember-cli-shims": "0.1.0",
"ember-cli-test-loader": "0.2.2",
- "ember-load-initializers": "ember-cli/ember-load-initializers#0.1.7",
"ember-mocha": "0.8.11",
"es5-shim": "4.2.0",
"Faker": "3.0.1",
@@ -21,7 +20,6 @@
"jqueryui-touch-punch": "furf/jquery-ui-touch-punch#4bc009145202d9c7483ba85f3a236a8f3470354d",
"jquery.simulate.drag-sortable": "0.1.0",
"keymaster": "1.6.3",
- "loader.js": "3.4.0",
"lodash": "3.7.0",
"moment": "2.10.3",
"normalize.css": "3.0.3",
diff --git a/core/client/config/deprecation-workflow.js b/core/client/config/deprecation-workflow.js
new file mode 100644
index 0000000000..6f08a71910
--- /dev/null
+++ b/core/client/config/deprecation-workflow.js
@@ -0,0 +1,7 @@
+window.deprecationWorkflow = window.deprecationWorkflow || {};
+window.deprecationWorkflow.config = {
+ workflow: [
+ {handler: 'silence', matchMessage: 'Using the injected `container` is deprecated. Please use the `getOwner` helper instead to access the owner of this object.'},
+ {handler: 'silence', matchMessage: 'You modified (-join-classes \'ember-view\' \'form-group\' (-normalize-class \'errorClass\' errorClass activeClass=undefined inactiveClass=undefined)) twice in a single render. This was unreliable in Ember 1.x and will be removed in Ember 3.0'}
+ ]
+};
diff --git a/core/client/package.json b/core/client/package.json
index 5a9a6c17b3..26a310b6f1 100644
--- a/core/client/package.json
+++ b/core/client/package.json
@@ -21,11 +21,12 @@
"devDependencies": {
"broccoli-asset-rev": "2.2.0",
"ember-ajax": "0.7.1",
- "ember-cli": "1.13.15",
+ "ember-cli": "2.3.0",
"ember-cli-app-version": "1.0.0",
"ember-cli-babel": "5.1.5",
"ember-cli-content-security-policy": "0.4.0",
"ember-cli-dependency-checker": "1.1.0",
+ "ember-cli-deprecation-workflow": "0.1.5",
"ember-cli-fastclick": "1.0.3",
"ember-cli-htmlbars": "1.0.1",
"ember-cli-htmlbars-inline-precompile": "0.3.1",
@@ -34,12 +35,13 @@
"ember-cli-pretender": "0.5.0",
"ember-cli-release": "0.2.8",
"ember-cli-selectize": "0.4.3",
- "ember-cli-sri": "1.2.0",
+ "ember-cli-sri": "2.0.0",
"ember-cli-uglify": "1.2.0",
"ember-data": "2.3.3",
"ember-data-filter": "1.13.0",
"ember-disable-proxy-controllers": "1.0.1",
"ember-export-application-global": "1.0.5",
+ "ember-load-initializers": "0.5.0",
"ember-myth": "0.1.1",
"ember-resolver": "2.0.3",
"ember-route-action-helper": "0.3.0",
@@ -52,6 +54,7 @@
"glob": "^4.0.5",
"liquid-fire": "0.23.0",
"liquid-tether": "0.1.11",
+ "loader.js": "4.0.0",
"walk-sync": "^0.1.3"
},
"ember-addon": {
diff --git a/core/client/tests/helpers/resolver.js b/core/client/tests/helpers/resolver.js
index ffdeccd21e..50e9179f54 100644
--- a/core/client/tests/helpers/resolver.js
+++ b/core/client/tests/helpers/resolver.js
@@ -1,7 +1,7 @@
-import Resolver from 'ember-resolver';
+import Resolver from '../../resolver';
import config from '../../config/environment';
-let resolver = Resolver.create();
+const resolver = Resolver.create();
resolver.namespace = {
modulePrefix: config.modulePrefix,
diff --git a/core/client/tests/index.html b/core/client/tests/index.html
index b7426ce0ad..dc9021f1ca 100644
--- a/core/client/tests/index.html
+++ b/core/client/tests/index.html
@@ -47,10 +47,10 @@
{{content-for 'body'}}
{{content-for 'test-body'}}
+
-