{"action":"created","issue":{"url":"https://api.github.com/repos/ranisalt/node-argon2/issues/14","repository_url":"https://api.github.com/repos/ranisalt/node-argon2","labels_url":"https://api.github.com/repos/ranisalt/node-argon2/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/ranisalt/node-argon2/issues/14/comments","events_url":"https://api.github.com/repos/ranisalt/node-argon2/issues/14/events","html_url":"https://github.com/ranisalt/node-argon2/issues/14","id":130266030,"number":14,"title":"Use promises instead of callbacks","user":{"login":"ranisalt","id":1993083,"avatar_url":"https://avatars.githubusercontent.com/u/1993083?v=3","gravatar_id":"","url":"https://api.github.com/users/ranisalt","html_url":"https://github.com/ranisalt","followers_url":"https://api.github.com/users/ranisalt/followers","following_url":"https://api.github.com/users/ranisalt/following{/other_user}","gists_url":"https://api.github.com/users/ranisalt/gists{/gist_id}","starred_url":"https://api.github.com/users/ranisalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ranisalt/subscriptions","organizations_url":"https://api.github.com/users/ranisalt/orgs","repos_url":"https://api.github.com/users/ranisalt/repos","events_url":"https://api.github.com/users/ranisalt/events{/privacy}","received_events_url":"https://api.github.com/users/ranisalt/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ranisalt/node-argon2/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-02-01T06:04:56Z","updated_at":"2016-02-22T20:12:47Z","closed_at":null,"body":"I'm thinking on changing the API to use Promises instead of callback arguments. Promises are now fully supported on Node and they are future-proof as in a future where ES6+ is ubiquitous, the following code will work:\r\n\r\n```js\r\nlet hash = await argon2.hash('password', salt);\r\n```\r\nAnd no more `Sync` functions need to exist. Also, people are very much used to Promises (or any thenables) nowadays, so there is no confusion.\r\n\r\nAnyone using this package has an opinion on that? It is possible to implement Promises without breaking compatibility, and although I'm against maintaining the deprecated code, I am willing to maintain it at least until the next major release (1.x)."},"comment":{"url":"https://api.github.com/repos/ranisalt/node-argon2/issues/comments/187365157","html_url":"https://github.com/ranisalt/node-argon2/issues/14#issuecomment-187365157","issue_url":"https://api.github.com/repos/ranisalt/node-argon2/issues/14","id":187365157,"user":{"login":"cgmb","id":4886803,"avatar_url":"https://avatars.githubusercontent.com/u/4886803?v=3","gravatar_id":"","url":"https://api.github.com/users/cgmb","html_url":"https://github.com/cgmb","followers_url":"https://api.github.com/users/cgmb/followers","following_url":"https://api.github.com/users/cgmb/following{/other_user}","gists_url":"https://api.github.com/users/cgmb/gists{/gist_id}","starred_url":"https://api.github.com/users/cgmb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cgmb/subscriptions","organizations_url":"https://api.github.com/users/cgmb/orgs","repos_url":"https://api.github.com/users/cgmb/repos","events_url":"https://api.github.com/users/cgmb/events{/privacy}","received_events_url":"https://api.github.com/users/cgmb/received_events","type":"User","site_admin":false},"created_at":"2016-02-22T20:12:47Z","updated_at":"2016-02-22T20:12:47Z","body":"> trying to install directly from this repo I get this:\r\n\r\n@DiknT I believe that's the error you get if you haven't initialized the submodule. `git submodule update --init` should fix it."}}