{"action":"reopened","issue":{"url":"https://api.github.com/repos/S2-/securerandomstring/issues/2","labels_url":"https://api.github.com/repos/S2-/securerandomstring/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/S2-/securerandomstring/issues/2/comments","events_url":"https://api.github.com/repos/S2-/securerandomstring/issues/2/events","html_url":"https://github.com/S2-/securerandomstring/issues/2","id":99472035,"number":2,"title":"suggestion: async code should callback with the error not throw it. ","user":{"login":"markstos","id":25829,"avatar_url":"https://avatars.githubusercontent.com/u/25829?v=3","gravatar_id":"","url":"https://api.github.com/users/markstos","html_url":"https://github.com/markstos","followers_url":"https://api.github.com/users/markstos/followers","following_url":"https://api.github.com/users/markstos/following{/other_user}","gists_url":"https://api.github.com/users/markstos/gists{/gist_id}","starred_url":"https://api.github.com/users/markstos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markstos/subscriptions","organizations_url":"https://api.github.com/users/markstos/orgs","repos_url":"https://api.github.com/users/markstos/repos","events_url":"https://api.github.com/users/markstos/events{/privacy}","received_events_url":"https://api.github.com/users/markstos/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-08-06T16:15:40Z","updated_at":"2015-08-21T06:45:25Z","closed_at":null,"body":"In async Node code, it's conventional to callback with the error as the first argument instead of throwing the error. \r\n\r\nThis is also the behavior of the underlying `crypto.randomBytes` function that is being used. I recommend a breaking change for the async API to follow this Node.js convention of having the callback return a possible error as the first argument. "}}