{"_id":"@alexbinary/promisify","_rev":"7-4211ee2fabeda3cd1cb8d241bc800412","name":"@alexbinary/promisify","description":"Naive promisification 🙈","dist-tags":{"latest":"3.0.4"},"versions":{"3.0.0":{"name":"@alexbinary/promisify","version":"3.0.0","description":"Minimalist promisification 👍","keywords":["promise","promises","promisify","promisification","async"],"homepage":"https://github.com/alexbinary/promisify#readme","bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"scripts":{"test":"istanbul cover _mocha","testw":"mocha -w"},"devDependencies":{"alexbinary.fs-sandbox":"git+https://github.com/alexbinary/fs-sandbox.git","chai":"^3.5.0","chai-fs":"^1.0.0","istanbul":"^0.4.5","mocha":"^3.2.0"},"gitHead":"a6eee46e3e4919d89cc54c90d034ac230865d481","_id":"@alexbinary/promisify@3.0.0","_shasum":"368a0f6418a734bca5e2a04543f35f77a3020dd2","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.2.1","_npmUser":{"name":"alexbinary","email":"alexandre@bintz.io"},"dist":{"shasum":"368a0f6418a734bca5e2a04543f35f77a3020dd2","tarball":"https://registry.npmjs.org/@alexbinary/promisify/-/promisify-3.0.0.tgz","integrity":"sha512-8MjES+jm6G4tF/w3gqFo1C8uf3TQPeioIOfv1MdZ4xlhwoBqXaRE7AwlD3+ng7CT4apSQts1hSaZXWCb0n1hqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkitSqsT9yHddc8G1u8G42C/5/QaeeQvw/aV074GrS2gIhALqSIS9kdV1XC/8prVrDA2Mo9tXHXNXJ/y3ALkRcJOi0"}]},"maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/promisify-3.0.0.tgz_1482834675274_0.8383901475463063"}},"3.0.1":{"name":"@alexbinary/promisify","version":"3.0.1","description":"Minimalist promisification 👍","keywords":["promise","promises","promisify","promisification","async"],"homepage":"https://github.com/alexbinary/promisify#readme","bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"scripts":{"test":"istanbul cover _mocha","testw":"mocha -w"},"devDependencies":{"alexbinary.fs-sandbox":"git+https://github.com/alexbinary/fs-sandbox.git","chai":"^3.5.0","chai-fs":"^1.0.0","istanbul":"^0.4.5","mocha":"^3.2.0"},"gitHead":"99ef9a79549a931a1fe144176800abe17f85c20a","_id":"@alexbinary/promisify@3.0.1","_shasum":"5b87ae6b98199578a51a20fc104f6b78053c629f","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.2.1","_npmUser":{"name":"alexbinary","email":"alexandre@bintz.io"},"dist":{"shasum":"5b87ae6b98199578a51a20fc104f6b78053c629f","tarball":"https://registry.npmjs.org/@alexbinary/promisify/-/promisify-3.0.1.tgz","integrity":"sha512-QvggK9JcJ02l21ygmtc/iempugM16+yEDIM5exuapaWF8Q4PC48hH8Wg8HToX5rxI8Y0PF9c+cWPKnr5EbthNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+v3mSex46UqvmctYJJrWk3L53DuuymnbRNE8RtYYW1wIhAI4r+c3P3Pvx6aAES/Mpr9EMOgnGfkPLSUrB7uyBdw6Y"}]},"maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/promisify-3.0.1.tgz_1482835605735_0.43078309018164873"}},"3.0.2":{"name":"@alexbinary/promisify","version":"3.0.2","description":"Minimalist promisification 👍","keywords":["promise","promises","promisify","promisification","async"],"homepage":"https://github.com/alexbinary/promisify#readme","bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"scripts":{"test":"istanbul cover _mocha","testw":"mocha -w"},"devDependencies":{"alexbinary.fs-sandbox":"git+https://github.com/alexbinary/fs-sandbox.git","chai":"^3.5.0","chai-fs":"^1.0.0","istanbul":"^0.4.5","mocha":"^3.2.0"},"gitHead":"0b145be9058a9502456539ce71eca23492de4de6","_id":"@alexbinary/promisify@3.0.2","_shasum":"e0e34759061ac19910e53c68d990c71817bbce0c","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.2.1","_npmUser":{"name":"alexbinary","email":"alexandre@bintz.io"},"dist":{"shasum":"e0e34759061ac19910e53c68d990c71817bbce0c","tarball":"https://registry.npmjs.org/@alexbinary/promisify/-/promisify-3.0.2.tgz","integrity":"sha512-PS3KFZk5Si1yP2J9MxO8fRPtYmRt0Mj85+B7QrgWoIa4BP/wR/7U9SV04G8I4pdWnTU7bdqX74WpPPFqj/s2xA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB1W5aWJQKMPfF4/pHHO/l1N1Oh3gj2GsdoHlPrL+B9ZAiB9TbzAFzdljSe926SxkmAI4+eQMc90YvbnPK6xrr/1kA=="}]},"maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/promisify-3.0.2.tgz_1482913375423_0.6158577671740204"}},"3.0.3":{"name":"@alexbinary/promisify","version":"3.0.3","description":"Naive promisification 🙈","keywords":["promise","promises","promisify","promisification","async"],"homepage":"https://github.com/alexbinary/promisify#readme","bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"scripts":{"test":"istanbul cover _mocha","testw":"mocha -w","prepublish":"mocha"},"devDependencies":{"alexbinary.fs-sandbox":"git+https://github.com/alexbinary/fs-sandbox.git","chai":"^3.5.0","chai-fs":"^1.0.0","istanbul":"^0.4.5","mocha":"^3.2.0"},"gitHead":"81c834f9301008cbce356aa9d3219307b06157b3","_id":"@alexbinary/promisify@3.0.3","_shasum":"6db8689253e01b6966b9ff73c20066e1cf226701","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.2.1","_npmUser":{"name":"alexbinary","email":"alexandre@bintz.io"},"dist":{"shasum":"6db8689253e01b6966b9ff73c20066e1cf226701","tarball":"https://registry.npmjs.org/@alexbinary/promisify/-/promisify-3.0.3.tgz","integrity":"sha512-ASmYIfndcoFPPBN14qTehvc9YuGp1W/DfClaDs2EEZHhs32DrPlD/2VdYMuI5CMI71uC8egU0JLgWynoQOYg+Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/tzmQjvd3jUOpPtRUCf+64rKVE5zQyJjieu7+WY38tAIhAMAKSEGLlQQ918ijecym8EO7T6kodBT/wo9q/7TZ3SCV"}]},"maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/promisify-3.0.3.tgz_1483003884239_0.47272587078623474"}},"3.0.4":{"name":"@alexbinary/promisify","version":"3.0.4","description":"Naive promisification 🙈","keywords":["promise","promises","promisify","promisification","async"],"homepage":"https://github.com/alexbinary/promisify#readme","bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"scripts":{"test":"istanbul cover _mocha","testw":"mocha -w","prepublish":"mocha"},"devDependencies":{"alexbinary.fs-sandbox":"git+https://github.com/alexbinary/fs-sandbox.git","chai":"^3.5.0","chai-fs":"^1.0.0","istanbul":"^0.4.5","mocha":"^3.2.0"},"gitHead":"e7b6a05f8f89c8971bd576925913fee311722089","_id":"@alexbinary/promisify@3.0.4","_shasum":"e35566955cfd0123d8a4cc9352c048557a42b375","_from":".","_npmVersion":"3.10.10","_nodeVersion":"7.3.0","_npmUser":{"name":"alexbinary","email":"alexandre@bintz.io"},"dist":{"shasum":"e35566955cfd0123d8a4cc9352c048557a42b375","tarball":"https://registry.npmjs.org/@alexbinary/promisify/-/promisify-3.0.4.tgz","integrity":"sha512-I9TJoI50NfYy5wbgfOjs8IrQ8hSPg1j5mFQ3JK03mi52pZZ9dt+jzzfyF1KvsHix5PnVx+nuArDzlwFqlN0dDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHFbdfsxMpTFp17QkgXBsDsj3JR+O2/NZJbb+/e2kEcwIhAPrXNSeTBBx3++oLKOuMeQJfMTam4+AquFWymCrQKF1P"}]},"maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/promisify-3.0.4.tgz_1483004256233_0.16243447898887098"}}},"readme":"# promisify\n\nNaive promisification 🙈\n\n[![npm](https://img.shields.io/npm/v/@alexbinary/promisify.svg)](https://www.npmjs.com/package/@alexbinary/promisify)\n[![GitHub release](https://img.shields.io/github/release/alexbinary/promisify.svg?label=\"github\")](https://github.com/alexbinary/promisify/releases/latest)\n[![Build Status](https://travis-ci.org/alexbinary/promisify.svg)](https://travis-ci.org/alexbinary/promisify)\n[![dependencies Status](https://david-dm.org/alexbinary/promisify/status.svg)](https://david-dm.org/alexbinary/promisify)\n[![devDependencies Status](https://david-dm.org/alexbinary/promisify/dev-status.svg)](https://david-dm.org/alexbinary/promisify?type=dev)\n\nWARNING: This is a very basic implementation that works in simple cases but will probably break in more advanced situations.\n\n## Install\n\nInstall using npm or yarn :\n\n```bash\n$ npm install @alexbinary/promisify\n# or\n$ yarn add @alexbinary/promisify\n```\n\n## Usage\n\n```javascript\nlet promisify = require('@alexbinary/promisify')\n\n// promisify a function :\n\nfunction f (cb) { cb(null, 'ok') }\n\npromisify(f)()\n.then((result) => console.log(result))  // 'ok'\n.catch((err) => console.error(err))\n\n// promisify methods in an object :\n\npromisify(fs, ['readFile', 'writeFile'])\nfs.readFile('/foo/bar', 'utf8')\n.then((content) => console.log(content))\n.catch((err) => console.log(err))\n\n```\n\n## Documentation\n\n```javascript\nlet promisify = require('@alexbinary/promisify')\n```\n\n### promisify(function)\n\nReturns a function that returns a Promise with `function` as its executor.\n\n`function` is expected to take a callback as last argument and call it with an error as first argument or null if success (node callback style).\n\nIf the callback is called with an error then the promise gets rejected with that error.\nIf the callback is called without error then the promise is resolved with any arguments passed to the callback after the first argument.\n\nNote that the returned function can still be used with a callback style.\n\nThis method is idempotent, i.e. if `function` is the result of calling `promisify` then the returned value is `function` itself. This is done by defining a Symbol property on the returned object and checking for that property before processing.\n\n### promisify(object, methods)\n\nReplaces methods in given `object` whose names are listed in `methods` by the result of `promisify(method)`.\n\nReturns `object`.\n\n## License\n\nMIT\n","maintainers":[{"name":"alexbinary","email":"alexandre@bintz.io"}],"time":{"modified":"2022-06-12T14:28:24.926Z","created":"2016-12-27T10:31:15.932Z","3.0.0":"2016-12-27T10:31:15.932Z","3.0.1":"2016-12-27T10:46:47.722Z","3.0.2":"2016-12-28T08:22:57.550Z","3.0.3":"2016-12-29T09:31:24.817Z","3.0.4":"2016-12-29T09:37:36.841Z"},"homepage":"https://github.com/alexbinary/promisify#readme","keywords":["promise","promises","promisify","promisification","async"],"repository":{"type":"git","url":"git+https://github.com/alexbinary/promisify.git"},"author":{"name":"Alexandre Bintz","email":"alexandre@bintz.io"},"bugs":{"url":"https://github.com/alexbinary/promisify/issues","email":"alexandre@bintz.io"},"license":"MIT","readmeFilename":"README.md"}