{"action":"created","issue":{"url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/4","repository_url":"https://api.github.com/repos/ipld/js-ipld-dag-pb","labels_url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/4/comments","events_url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/4/events","html_url":"https://github.com/ipld/js-ipld-dag-pb/issues/4","id":186091892,"number":4,"title":"Make dag-pb an immutable 'class'","user":{"login":"diasdavid","id":1211152,"avatar_url":"https://avatars.githubusercontent.com/u/1211152?v=3","gravatar_id":"","url":"https://api.github.com/users/diasdavid","html_url":"https://github.com/diasdavid","followers_url":"https://api.github.com/users/diasdavid/followers","following_url":"https://api.github.com/users/diasdavid/following{/other_user}","gists_url":"https://api.github.com/users/diasdavid/gists{/gist_id}","starred_url":"https://api.github.com/users/diasdavid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diasdavid/subscriptions","organizations_url":"https://api.github.com/users/diasdavid/orgs","repos_url":"https://api.github.com/users/diasdavid/repos","events_url":"https://api.github.com/users/diasdavid/events{/privacy}","received_events_url":"https://api.github.com/users/diasdavid/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-10-29T17:59:17Z","updated_at":"2016-10-29T18:34:17Z","closed_at":null,"body":"It is very cumbersome to use DAGNode class in the way it was designed originally, specially now with the async crypto constraints that require a callback to mutate state mutation on each instance (literally, bleh).\r\n\r\nI would like to make the strong case to make the `methods` of this DAGNode class actually `function` present in the dagPB.util, so that any mutation returns an instance of a new instance.\r\n\r\nBenefits:\r\n\r\n- no more node.multihash((err, multihash) => {})\r\n- no more node.toJSON((err, nodeJSON) => {})\r\n- more of node.multihash (calculate once, use it every time)\r\n- more of node.json (calculate once, use it every time)\r\n\r\n//cc @haadcode @dignifiedquire @VictorBjelkholm \r\n"},"comment":{"url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/comments/257108060","html_url":"https://github.com/ipld/js-ipld-dag-pb/issues/4#issuecomment-257108060","issue_url":"https://api.github.com/repos/ipld/js-ipld-dag-pb/issues/4","id":257108060,"user":{"login":"dignifiedquire","id":790842,"avatar_url":"https://avatars.githubusercontent.com/u/790842?v=3","gravatar_id":"","url":"https://api.github.com/users/dignifiedquire","html_url":"https://github.com/dignifiedquire","followers_url":"https://api.github.com/users/dignifiedquire/followers","following_url":"https://api.github.com/users/dignifiedquire/following{/other_user}","gists_url":"https://api.github.com/users/dignifiedquire/gists{/gist_id}","starred_url":"https://api.github.com/users/dignifiedquire/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dignifiedquire/subscriptions","organizations_url":"https://api.github.com/users/dignifiedquire/orgs","repos_url":"https://api.github.com/users/dignifiedquire/repos","events_url":"https://api.github.com/users/dignifiedquire/events{/privacy}","received_events_url":"https://api.github.com/users/dignifiedquire/received_events","type":"User","site_admin":false},"created_at":"2016-10-29T18:34:16Z","updated_at":"2016-10-29T18:34:16Z","body":"sounds good to me"}}
{"actor":{"display_login":"dignifiedquire"}}