{"action":"opened","issue":{"url":"https://api.github.com/repos/emberjs/ember.js/issues/16850","repository_url":"https://api.github.com/repos/emberjs/ember.js","labels_url":"https://api.github.com/repos/emberjs/ember.js/issues/16850/labels{/name}","comments_url":"https://api.github.com/repos/emberjs/ember.js/issues/16850/comments","events_url":"https://api.github.com/repos/emberjs/ember.js/issues/16850/events","html_url":"https://github.com/emberjs/ember.js/issues/16850","id":345760013,"node_id":"MDU6SXNzdWUzNDU3NjAwMTM=","number":16850,"title":"Relevance of @ember/object/computed macros when there is ember-awesome-macros","user":{"login":"YoranBrondsema","id":1374412,"node_id":"MDQ6VXNlcjEzNzQ0MTI=","avatar_url":"https://avatars1.githubusercontent.com/u/1374412?v=4","gravatar_id":"","url":"https://api.github.com/users/YoranBrondsema","html_url":"https://github.com/YoranBrondsema","followers_url":"https://api.github.com/users/YoranBrondsema/followers","following_url":"https://api.github.com/users/YoranBrondsema/following{/other_user}","gists_url":"https://api.github.com/users/YoranBrondsema/gists{/gist_id}","starred_url":"https://api.github.com/users/YoranBrondsema/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/YoranBrondsema/subscriptions","organizations_url":"https://api.github.com/users/YoranBrondsema/orgs","repos_url":"https://api.github.com/users/YoranBrondsema/repos","events_url":"https://api.github.com/users/YoranBrondsema/events{/privacy}","received_events_url":"https://api.github.com/users/YoranBrondsema/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-30T13:33:55Z","updated_at":"2018-07-30T13:33:55Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Over the past few months, I've found myself using almost exclusively macros to define properties. I'm hardly writing any properties simply with `computed`. The syntax is more declarative and there are no issues with keeping the list of dependencies in sync with the implementation.\r\n\r\nIn doing so, I've been using mostly the [ember-awesome-macros](https://github.com/kellyselden/ember-awesome-macros) addon instead of the macros defined in [@ember/object/computed](https://emberjs.com/api/ember/release/modules/@ember%2Fobject). Three reasons:\r\n\r\n1. The macros in `ember-awesome-macros` are composable which avoids having to name intermediate properties.\r\n2. Minus a few exceptions (e.g. `intersection`), all macros in `@ember/object/computed` are also available in `ember-awesome-macros`.\r\n3. The [ember-macro-helpers](https://github.com/kellyselden/ember-macro-helpers) helps defines custom macros easily.\r\n\r\nFor those three reasons, I think that `ember-awesome-macros` is the superior technical solution for macros for Ember.js users.\r\n\r\nHowever, there can be some confusion now due to the overlap in functionality between the two. For instance, the `not` macro exists in both packages:\r\n\r\n```\r\nimport { not } from '@ember/object/computed';\r\nimport { not } from 'ember-awesome-macros';\r\n```\r\n\r\nOne is composable, one is not.\r\n\r\nGiven the confusion, would it make sense to replace the existing `@ember/object/computed` package with `ember-awesome-macros`, and thereby \"promoting\" the latter to an official Ember.js package? Of course, the macros missing in `ember-awesome-macros` would have to be ported."}}
{"actor":{"display_login":"YoranBrondsema"}}