{"action":"created","issue":{"url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/141","labels_url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/141/labels{/name}","comments_url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/141/comments","events_url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/141/events","html_url":"https://github.com/AmpersandJS/ampersand-state/pull/141","id":57265390,"number":141,"title":"use deep quality comparison for derived updates","user":{"login":"CristiScheye","id":5187121,"avatar_url":"https://avatars.githubusercontent.com/u/5187121?v=3","gravatar_id":"","url":"https://api.github.com/users/CristiScheye","html_url":"https://github.com/CristiScheye","followers_url":"https://api.github.com/users/CristiScheye/followers","following_url":"https://api.github.com/users/CristiScheye/following{/other_user}","gists_url":"https://api.github.com/users/CristiScheye/gists{/gist_id}","starred_url":"https://api.github.com/users/CristiScheye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CristiScheye/subscriptions","organizations_url":"https://api.github.com/users/CristiScheye/orgs","repos_url":"https://api.github.com/users/CristiScheye/repos","events_url":"https://api.github.com/users/CristiScheye/events{/privacy}","received_events_url":"https://api.github.com/users/CristiScheye/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/AmpersandJS/ampersand-state/labels/enhancement","name":"enhancement","color":"207de5"},{"url":"https://api.github.com/repos/AmpersandJS/ampersand-state/labels/request","name":"request","color":"c7def8"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-02-11T01:34:35Z","updated_at":"2015-02-11T08:47:59Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/AmpersandJS/ampersand-state/pulls/141","html_url":"https://github.com/AmpersandJS/ampersand-state/pull/141","diff_url":"https://github.com/AmpersandJS/ampersand-state/pull/141.diff","patch_url":"https://github.com/AmpersandJS/ampersand-state/pull/141.patch"},"body":"Instead of using strict comparison on derived property changes, uses the `_.isEqual` method. Helps prevent triggering unnecessary change events when a derived property is not a primitive data type."},"comment":{"url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/comments/73849256","html_url":"https://github.com/AmpersandJS/ampersand-state/pull/141#issuecomment-73849256","issue_url":"https://api.github.com/repos/AmpersandJS/ampersand-state/issues/141","id":73849256,"user":{"login":"kamilogorek","id":1523305,"avatar_url":"https://avatars.githubusercontent.com/u/1523305?v=3","gravatar_id":"","url":"https://api.github.com/users/kamilogorek","html_url":"https://github.com/kamilogorek","followers_url":"https://api.github.com/users/kamilogorek/followers","following_url":"https://api.github.com/users/kamilogorek/following{/other_user}","gists_url":"https://api.github.com/users/kamilogorek/gists{/gist_id}","starred_url":"https://api.github.com/users/kamilogorek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kamilogorek/subscriptions","organizations_url":"https://api.github.com/users/kamilogorek/orgs","repos_url":"https://api.github.com/users/kamilogorek/repos","events_url":"https://api.github.com/users/kamilogorek/events{/privacy}","received_events_url":"https://api.github.com/users/kamilogorek/received_events","type":"User","site_admin":false},"created_at":"2015-02-11T08:47:59Z","updated_at":"2015-02-11T08:47:59Z","body":"@CristiScheye thanks for the feedback! I believe this should utilize `isObjectEqual` amp module – http://amp.ampersandjs.com/#amp-is-object-equal\r\n\r\nThis will reduce whole code to:\r\n```js\r\nvar isObjectEqual = require('amp-is-object-equal');\r\nif (!isObjectEqual(self._cache[name], newVal) || !def.cache) { ... }\r\n```"}}