{"action":"created","issue":{"url":"https://api.github.com/repos/emberjs/ember.js/issues/11978","labels_url":"https://api.github.com/repos/emberjs/ember.js/issues/11978/labels{/name}","comments_url":"https://api.github.com/repos/emberjs/ember.js/issues/11978/comments","events_url":"https://api.github.com/repos/emberjs/ember.js/issues/11978/events","html_url":"https://github.com/emberjs/ember.js/pull/11978","id":98984075,"number":11978,"title":"[DOC release] Mark `Ember.merge` as public","user":{"login":"tricknotes","id":290782,"avatar_url":"https://avatars.githubusercontent.com/u/290782?v=3","gravatar_id":"","url":"https://api.github.com/users/tricknotes","html_url":"https://github.com/tricknotes","followers_url":"https://api.github.com/users/tricknotes/followers","following_url":"https://api.github.com/users/tricknotes/following{/other_user}","gists_url":"https://api.github.com/users/tricknotes/gists{/gist_id}","starred_url":"https://api.github.com/users/tricknotes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tricknotes/subscriptions","organizations_url":"https://api.github.com/users/tricknotes/orgs","repos_url":"https://api.github.com/users/tricknotes/repos","events_url":"https://api.github.com/users/tricknotes/events{/privacy}","received_events_url":"https://api.github.com/users/tricknotes/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-08-04T14:30:43Z","updated_at":"2015-08-04T14:47:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/emberjs/ember.js/pulls/11978","html_url":"https://github.com/emberjs/ember.js/pull/11978","diff_url":"https://github.com/emberjs/ember.js/pull/11978.diff","patch_url":"https://github.com/emberjs/ember.js/pull/11978.patch"},"body":"There are no alternative way to `Ember.merge` in Ember world.\r\nBut it is useful and widely used from other library.\r\n\r\nFor example:\r\n* Ember Data: https://github.com/emberjs/data/blob/v1.13.7/packages/ember-data/lib/core.js#L29\r\n* Liquid Fire: https://github.com/ef4/liquid-fire/blob/v0.21.0/app/transitions/scroll-then.js#L19\r\n\r\nSo this method may be public until `Object.assign` can be used natively."},"comment":{"url":"https://api.github.com/repos/emberjs/ember.js/issues/comments/127638572","html_url":"https://github.com/emberjs/ember.js/pull/11978#issuecomment-127638572","issue_url":"https://api.github.com/repos/emberjs/ember.js/issues/11978","id":127638572,"user":{"login":"rwjblue","id":12637,"avatar_url":"https://avatars.githubusercontent.com/u/12637?v=3","gravatar_id":"","url":"https://api.github.com/users/rwjblue","html_url":"https://github.com/rwjblue","followers_url":"https://api.github.com/users/rwjblue/followers","following_url":"https://api.github.com/users/rwjblue/following{/other_user}","gists_url":"https://api.github.com/users/rwjblue/gists{/gist_id}","starred_url":"https://api.github.com/users/rwjblue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rwjblue/subscriptions","organizations_url":"https://api.github.com/users/rwjblue/orgs","repos_url":"https://api.github.com/users/rwjblue/repos","events_url":"https://api.github.com/users/rwjblue/events{/privacy}","received_events_url":"https://api.github.com/users/rwjblue/received_events","type":"User","site_admin":false},"created_at":"2015-08-04T14:47:03Z","updated_at":"2015-08-04T14:47:03Z","body":"We have a separate `assign` function [here](https://github.com/emberjs/ember.js/blob/master/packages/ember-metal/lib/assign.js) that more closely matches `Object.assign`.\r\n\r\nUsage of `Ember.merge` should be compatible with that assign function, so we should be able to do the following:\r\n\r\n* export the `ember-metal/assign` function as both `Ember.merge` and `Ember.assign` in beta\r\n* remove the extra `Ember.merge` from the codebase\r\n* Deprecate `Ember.merge` on canary in favor of `Ember.assign` "}}