From 1ed73ac3d1c218b9a3b56640543fd13d0913d27e Mon Sep 17 00:00:00 2001 From: Stefan Penner Date: Thu, 18 Jun 2015 19:33:07 -0700 Subject: [PATCH] [BUGFIX release] Deprecate Ember.keys. --- packages/ember-metal/lib/main.js | 2 +- packages/ember-metal/tests/main_test.js | 7 ++++++- packages/ember-routing/lib/system/router_state.js | 6 +++--- packages/ember/tests/component_registration_test.js | 5 +++-- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/ember-metal/lib/main.js b/packages/ember-metal/lib/main.js index 5a245ca34e8..ac3f77d8ea2 100644 --- a/packages/ember-metal/lib/main.js +++ b/packages/ember-metal/lib/main.js @@ -223,7 +223,6 @@ Ember._Cache = Cache; Ember.generateGuid = generateGuid; Ember.GUID_KEY = GUID_KEY; -Ember.keys = Object.keys; Ember.platform = { defineProperty: true, hasPropertyAccessors: true @@ -408,5 +407,6 @@ if (Ember.__loader.registry['ember-debug']) { } Ember.create = Ember.deprecateFunc('Ember.create is deprecated in-favour of Object.create', Object.create); +Ember.keys = Ember.deprecateFunc('Ember.keys is deprecated in-favour of Object.keys', Object.keys); export default Ember; diff --git a/packages/ember-metal/tests/main_test.js b/packages/ember-metal/tests/main_test.js index e79bc889b70..60de97f5df2 100644 --- a/packages/ember-metal/tests/main_test.js +++ b/packages/ember-metal/tests/main_test.js @@ -32,8 +32,13 @@ QUnit.test('SEMVER_REGEX properly validates and invalidates version numbers', fu validateVersionString('1.11', false); }); +QUnit.test('Ember.keys is deprecated', function() { + expectDeprecation(function() { + Ember.keys({}); + }, 'Ember.keys is deprecated in-favour of Object.keys'); +}); -QUnit.test('Ember.create is deprecated', function() { +QUnit.test('Ember.keys is deprecated', function() { expectDeprecation(function() { Ember.create(null); }, 'Ember.create is deprecated in-favour of Object.create'); diff --git a/packages/ember-routing/lib/system/router_state.js b/packages/ember-routing/lib/system/router_state.js index 80a7129420f..0274709e52d 100644 --- a/packages/ember-routing/lib/system/router_state.js +++ b/packages/ember-routing/lib/system/router_state.js @@ -1,4 +1,5 @@ -import Ember from 'ember-metal/core'; +import isEmpty from 'ember-metal/is_empty'; +import keys from 'ember-metal/keys'; import EmberObject from 'ember-runtime/system/object'; import merge from 'ember-metal/merge'; @@ -11,7 +12,7 @@ var RouterState = EmberObject.extend({ var state = this.routerJsState; if (!this.routerJs.isActiveIntent(routeName, models, null, state)) { return false; } - var emptyQueryParams = Ember.isEmpty(Ember.keys(queryParams)); + var emptyQueryParams = isEmpty(keys(queryParams)); if (queryParamsMustMatch && !emptyQueryParams) { var visibleQueryParams = {}; @@ -37,4 +38,3 @@ function shallowEqual(a, b) { } export default RouterState; - diff --git a/packages/ember/tests/component_registration_test.js b/packages/ember/tests/component_registration_test.js index 7417d9ea79c..bc6c533f415 100644 --- a/packages/ember/tests/component_registration_test.js +++ b/packages/ember/tests/component_registration_test.js @@ -1,5 +1,6 @@ import 'ember'; import Ember from 'ember-metal/core'; +import keys from 'ember-metal/keys'; import compile from 'ember-template-compiler/system/compile'; import helpers from 'ember-htmlbars/helpers'; @@ -12,7 +13,7 @@ function prepare() { Ember.TEMPLATES['components/expand-it'] = compile('

hello {{yield}}

'); Ember.TEMPLATES.application = compile('Hello world {{#expand-it}}world{{/expand-it}}'); - originalHelpers = Ember.A(Ember.keys(helpers)); + originalHelpers = Ember.A(keys(helpers)); } function cleanup() { @@ -28,7 +29,7 @@ function cleanup() { } function cleanupHandlebarsHelpers() { - var currentHelpers = Ember.A(Ember.keys(helpers)); + var currentHelpers = Ember.A(keys(helpers)); currentHelpers.forEach(function(name) { if (!originalHelpers.contains(name)) {