diff --git a/packages/ember/index.js b/packages/ember/index.js index a52f38c888f..27ff11d4650 100644 --- a/packages/ember/index.js +++ b/packages/ember/index.js @@ -202,7 +202,19 @@ Ember.canInvoke = utils.canInvoke; Ember.tryInvoke = utils.tryInvoke; Ember.wrap = utils.wrap; Ember.uuid = utils.uuid; -Ember.NAME_KEY = utils.NAME_KEY; + +Object.defineProperty(Ember, 'NAME_KEY', { + enumerable: false, + get() { + deprecate('Using `Ember.NAME_KEY` is deprecated, override `.toString` instead', false, { + id: 'ember-name-key-usage', + until: '3.5.0', + }); + + return utils.NAME_KEY; + }, +}); + Ember._Cache = utils.Cache; // ****container**** diff --git a/packages/ember/tests/reexports_test.js b/packages/ember/tests/reexports_test.js index 71b4962169d..6770720666f 100644 --- a/packages/ember/tests/reexports_test.js +++ b/packages/ember/tests/reexports_test.js @@ -34,6 +34,12 @@ moduleFor( }, /EXTEND_PROTOTYPES is deprecated/); } + ['@test Ember.NAME_KEY is deprecated']() { + expectDeprecation(() => { + Ember.NAME_KEY; + }, 'Using `Ember.NAME_KEY` is deprecated, override `.toString` instead'); + } + '@test Ember.FEATURES is exported'(assert) { for (let feature in FEATURES) { assert.equal( @@ -64,7 +70,6 @@ let allExports = [ ['canInvoke', 'ember-utils'], ['tryInvoke', 'ember-utils'], ['wrap', 'ember-utils'], - ['NAME_KEY', 'ember-utils'], // container ['Registry', 'container', 'Registry'],