{"action":"opened","issue":{"url":"https://api.github.com/repos/IndigoUnited/node-promise-retry/issues/5","repository_url":"https://api.github.com/repos/IndigoUnited/node-promise-retry","labels_url":"https://api.github.com/repos/IndigoUnited/node-promise-retry/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/IndigoUnited/node-promise-retry/issues/5/comments","events_url":"https://api.github.com/repos/IndigoUnited/node-promise-retry/issues/5/events","html_url":"https://github.com/IndigoUnited/node-promise-retry/issues/5","id":136731382,"number":5,"title":"Allow us to choose our promise implementation","user":{"login":"SimonSchick","id":3259089,"avatar_url":"https://avatars.githubusercontent.com/u/3259089?v=3","gravatar_id":"","url":"https://api.github.com/users/SimonSchick","html_url":"https://github.com/SimonSchick","followers_url":"https://api.github.com/users/SimonSchick/followers","following_url":"https://api.github.com/users/SimonSchick/following{/other_user}","gists_url":"https://api.github.com/users/SimonSchick/gists{/gist_id}","starred_url":"https://api.github.com/users/SimonSchick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SimonSchick/subscriptions","organizations_url":"https://api.github.com/users/SimonSchick/orgs","repos_url":"https://api.github.com/users/SimonSchick/repos","events_url":"https://api.github.com/users/SimonSchick/events{/privacy}","received_events_url":"https://api.github.com/users/SimonSchick/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-02-26T15:45:07Z","updated_at":"2016-02-26T15:45:07Z","closed_at":null,"body":"It would be super handy if we could determine the implementation of the promise returned by this function.\r\n\r\nThis is helpful when using promise libs such as bluebird and Q and you don't want to miss on their functionality.\r\n\r\nExamples of how it could be done:\r\n\r\n```javascript\r\nconst promiseRetry = require('promise-retry');\r\npromiseRetry.setPromiseImplementation(Bluebird || q || whatever);\r\n // or\r\nconst promiseRetry = require('promise-retry')(Bluebird || q || whatever);\r\n```\r\n\r\nI've done the same in my [library](https://github.com/SimonSchick/event-promisify#simple-promisification)."}}